Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 0 additions & 10 deletions src/datadog/config_manager.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,6 @@ ConfigManager::Update parse_dynamic_config(const nlohmann::json& j) {
namespace rc = datadog::remote_config;

ConfigManager::ConfigManager(const FinalizedTracerConfig& config,
const TracerSignature& tracer_signature,
const std::shared_ptr<TracerTelemetry>& telemetry)
: clock_(config.clock),
default_metadata_(config.metadata),
Expand All @@ -133,7 +132,6 @@ ConfigManager::ConfigManager(const FinalizedTracerConfig& config,
rules_(config.trace_sampler.rules),
span_defaults_(std::make_shared<SpanDefaults>(config.defaults)),
report_traces_(config.report_traces),
tracer_signature_(tracer_signature),
telemetry_(telemetry) {}

rc::Products ConfigManager::get_products() { return rc::product::APM_TRACING; }
Expand All @@ -151,14 +149,6 @@ Optional<std::string> ConfigManager::on_update(const Configuration& config) {

const auto config_json = nlohmann::json::parse(config.content);

const auto& targeted_service = config_json.at("service_target");
if (targeted_service.at("service").get<StringView>() !=
tracer_signature_.default_service ||
targeted_service.at("env").get<StringView>() !=
tracer_signature_.default_environment) {
return "Wrong service targeted";
}

auto config_update = parse_dynamic_config(config_json.at("lib_config"));

auto config_metadata = apply_update(config_update);
Expand Down
2 changes: 0 additions & 2 deletions src/datadog/config_manager.h
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,6 @@ class ConfigManager : public remote_config::Listener {
DynamicConfig<std::shared_ptr<const SpanDefaults>> span_defaults_;
DynamicConfig<bool> report_traces_;

const TracerSignature& tracer_signature_;
std::shared_ptr<TracerTelemetry> telemetry_;

private:
Expand All @@ -86,7 +85,6 @@ class ConfigManager : public remote_config::Listener {

public:
ConfigManager(const FinalizedTracerConfig& config,
const TracerSignature& signature,
const std::shared_ptr<TracerTelemetry>& telemetry);
~ConfigManager() override{};

Expand Down
4 changes: 2 additions & 2 deletions src/datadog/tracer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -47,8 +47,8 @@ Tracer::Tracer(const FinalizedTracerConfig& config,
tracer_telemetry_(std::make_shared<TracerTelemetry>(
config.telemetry.enabled, config.clock, logger_, signature_,
config.integration_name, config.integration_version)),
config_manager_(std::make_shared<ConfigManager>(config, signature_,
tracer_telemetry_)),
config_manager_(
std::make_shared<ConfigManager>(config, tracer_telemetry_)),
collector_(/* see constructor body */),
span_sampler_(
std::make_shared<SpanSampler>(config.span_sampler, config.clock)),
Expand Down
21 changes: 1 addition & 20 deletions test/test_config_manager.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -29,33 +29,14 @@ CONFIG_MANAGER_TEST("remote configuration handling") {
auto tracer_telemetry = std::make_shared<TracerTelemetry>(
false, default_clock, nullptr, tracer_signature, "", "");

ConfigManager config_manager(*finalize_config(config), tracer_signature,
tracer_telemetry);
ConfigManager config_manager(*finalize_config(config), tracer_telemetry);

rc::Listener::Configuration config_update{/* id = */ "id",
/* path = */ "",
/* content = */ "",
/* version = */ 1,
rc::product::Flag::APM_TRACING};

SECTION(
"configuration updates targetting the wrong tracer reports an error") {
// clang-format off
auto test_case = GENERATE(values<std::string>({
R"({ "service_target": { "service": "not-testsvc", "env": "test" } })",
R"({ "service_target": { "service": "testsvc", "env": "not-test" } })"
}));
// clang-format on

CAPTURE(test_case);

config_update.content = test_case;

// TODO: targetting wrong procut -> error
const auto err = config_manager.on_update(config_update);
CHECK(err);
}

SECTION("handling of `tracing_sampling_rate`") {
// SECTION("invalid value") {
// config_update.content = R"({
Expand Down
3 changes: 1 addition & 2 deletions test/test_datadog_agent.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -200,8 +200,7 @@ TEST_CASE("Remote Configuration", "[datadog_agent]") {
finalized->telemetry.enabled, finalized->clock, finalized->logger,
signature, "", "");

auto config_manager =
std::make_shared<ConfigManager>(*finalized, signature, telemetry);
auto config_manager = std::make_shared<ConfigManager>(*finalized, telemetry);

const auto& agent_config =
std::get<FinalizedDatadogAgentConfig>(finalized->collector);
Expand Down
Loading