Skip to content

Commit 014bc0e

Browse files
committed
reverting env/service filtering in tracingconfigpoller
1 parent 03478c8 commit 014bc0e

File tree

2 files changed

+0
-158
lines changed

2 files changed

+0
-158
lines changed

dd-trace-core/src/main/java/datadog/trace/core/TracingConfigPoller.java

Lines changed: 0 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -106,24 +106,6 @@ public void accept(ConfigKey configKey, byte[] content, PollingRateHinter hinter
106106
Okio.buffer(Okio.source(new ByteArrayInputStream(content))));
107107

108108
if (null != overrides && null != overrides.libConfig) {
109-
ServiceTarget serviceTarget = overrides.serviceTarget;
110-
if (serviceTarget != null) {
111-
String targetService = serviceTarget.service;
112-
String thisService = Config.get().getServiceName();
113-
if (targetService != null && !targetService.equalsIgnoreCase(thisService)) {
114-
log.debug(
115-
"Skipping config for service {}. Current service is {}",
116-
targetService,
117-
thisService);
118-
throw new IllegalArgumentException("service mismatch");
119-
}
120-
String targetEnv = serviceTarget.env;
121-
String thisEnv = Config.get().getEnv();
122-
if (targetEnv != null && !targetEnv.equalsIgnoreCase(thisEnv)) {
123-
log.debug("Skipping config for env {}. Current env is {}", targetEnv, thisEnv);
124-
throw new IllegalArgumentException("env mismatch");
125-
}
126-
}
127109
receivedOverrides = true;
128110
applyConfigOverrides(checkConfig(overrides.libConfig));
129111
if (log.isDebugEnabled()) {
@@ -266,21 +248,10 @@ private Map<String, String> parseTagListToMap(List<String> input) {
266248
}
267249

268250
static final class ConfigOverrides {
269-
@Json(name = "service_target")
270-
public ServiceTarget serviceTarget;
271-
272251
@Json(name = "lib_config")
273252
public LibConfig libConfig;
274253
}
275254

276-
static final class ServiceTarget {
277-
@Json(name = "service")
278-
public String service;
279-
280-
@Json(name = "env")
281-
public String env;
282-
}
283-
284255
static final class LibConfig {
285256
@Json(name = "tracing_enabled")
286257
public Boolean tracingEnabled;

dd-trace-core/src/test/groovy/datadog/trace/core/CoreTracerTest.groovy

Lines changed: 0 additions & 129 deletions
Original file line numberDiff line numberDiff line change
@@ -570,135 +570,6 @@ class CoreTracerTest extends DDCoreSpecification {
570570
tracer?.close()
571571
}
572572

573-
574-
def "reject configuration when target service+env mismatch"() {
575-
setup:
576-
injectSysConfig(SERVICE_NAME, service)
577-
injectSysConfig(ENV, env)
578-
579-
def key = ParsedConfigKey.parse("datadog/2/APM_TRACING/config_overrides/config")
580-
def poller = Mock(ConfigurationPoller)
581-
def sco = new SharedCommunicationObjects(
582-
okHttpClient: Mock(OkHttpClient),
583-
monitoring: Mock(Monitoring),
584-
agentUrl: HttpUrl.get('https://example.com'),
585-
featuresDiscovery: Mock(DDAgentFeaturesDiscovery),
586-
configurationPoller: poller
587-
)
588-
589-
def updater
590-
591-
when:
592-
def tracer = CoreTracer.builder()
593-
.sharedCommunicationObjects(sco)
594-
.pollForTracingConfiguration()
595-
.build()
596-
597-
then:
598-
1 * poller.addListener(Product.APM_TRACING, _ as ProductListener) >> {
599-
updater = it[1] // capture config updater for further testing
600-
}
601-
and:
602-
tracer.captureTraceConfig().serviceMapping == [:]
603-
604-
when:
605-
updater.accept(key, """
606-
{
607-
"service_target": {
608-
"service": "${targetService}",
609-
"env": "${targetEnv}"
610-
},
611-
"lib_config":
612-
{
613-
"tracing_service_mapping":
614-
[{
615-
"from_key": "foobar",
616-
"to_name": "bar"
617-
}]
618-
}
619-
}
620-
""".getBytes(StandardCharsets.UTF_8), null)
621-
updater.commit()
622-
623-
then: "configuration should not be applied"
624-
tracer.captureTraceConfig().serviceMapping == [:]
625-
and:
626-
thrown(IllegalArgumentException)
627-
628-
cleanup:
629-
tracer?.close()
630-
631-
where:
632-
service | env | targetService | targetEnv
633-
"service" | "env" | "service_1" | "env"
634-
"service" | "env" | "service" | "env_1"
635-
"service" | "env" | "service_2" | "env_2"
636-
}
637-
638-
def "accept configuration when target service+env match case-insensitive"() {
639-
setup:
640-
injectSysConfig(SERVICE_NAME, service)
641-
injectSysConfig(ENV, env)
642-
643-
def key = ParsedConfigKey.parse("datadog/2/APM_TRACING/config_overrides/config")
644-
def poller = Mock(ConfigurationPoller)
645-
def sco = new SharedCommunicationObjects(
646-
okHttpClient: Mock(OkHttpClient),
647-
monitoring: Mock(Monitoring),
648-
agentUrl: HttpUrl.get('https://example.com'),
649-
featuresDiscovery: Mock(DDAgentFeaturesDiscovery),
650-
configurationPoller: poller
651-
)
652-
653-
def updater
654-
655-
when:
656-
def tracer = CoreTracer.builder()
657-
.sharedCommunicationObjects(sco)
658-
.pollForTracingConfiguration()
659-
.build()
660-
661-
then:
662-
1 * poller.addListener(Product.APM_TRACING, _ as ProductListener) >> {
663-
updater = it[1] // capture config updater for further testing
664-
}
665-
and:
666-
tracer.captureTraceConfig().serviceMapping == [:]
667-
668-
when:
669-
updater.accept(key, """
670-
{
671-
"service_target": {
672-
"service": "${targetService}",
673-
"env": "${targetEnv}"
674-
},
675-
"lib_config":
676-
{
677-
"tracing_service_mapping":
678-
[{
679-
"from_key": "foobar",
680-
"to_name": "bar"
681-
}]
682-
}
683-
}
684-
""".getBytes(StandardCharsets.UTF_8), null)
685-
updater.commit()
686-
687-
then: "configuration should be applied"
688-
tracer.captureTraceConfig().serviceMapping == ["foobar":"bar"]
689-
690-
cleanup:
691-
tracer?.close()
692-
693-
where:
694-
service | env | targetService | targetEnv
695-
"service" | "env" | "service" | "env"
696-
"service" | "env" | "SERVICE" | "env"
697-
"service" | "env" | "service" | "ENV"
698-
"service" | "env" | "SERVICE" | "ENV"
699-
"SERVICE" | "ENV" | "service" | "env"
700-
}
701-
702573
def "flushes on tracer close if configured to do so"() {
703574
given:
704575
def writer = new WriterWithExplicitFlush()

0 commit comments

Comments
 (0)