From 10e12a666aeeb672e26183b4bf9dee916176e986 Mon Sep 17 00:00:00 2001 From: Andrew Kent Date: Tue, 13 Mar 2018 10:32:26 -0700 Subject: [PATCH] Use builtin decorators for every DDTracer --- .../src/test/groovy/JettyServletTest.groovy | 4 ++-- .../src/test/groovy/JettyServletTest.groovy | 6 ------ .../src/test/groovy/TomcatServletTest.groovy | 7 ------- .../datadog/trace/agent/test/AgentTestRunner.java | 6 ------ .../src/main/java/datadog/opentracing/DDTracer.java | 13 ++++++------- 5 files changed, 8 insertions(+), 28 deletions(-) diff --git a/dd-java-agent/instrumentation/servlet-2/src/test/groovy/JettyServletTest.groovy b/dd-java-agent/instrumentation/servlet-2/src/test/groovy/JettyServletTest.groovy index 1230b2b90d..79615fd632 100644 --- a/dd-java-agent/instrumentation/servlet-2/src/test/groovy/JettyServletTest.groovy +++ b/dd-java-agent/instrumentation/servlet-2/src/test/groovy/JettyServletTest.groovy @@ -99,7 +99,7 @@ class JettyServletTest extends AgentTestRunner { span.context().serviceName == "unnamed-java-app" span.context().operationName == "servlet.request" - span.context().resourceName == "servlet.request" + span.context().resourceName == "GET /$path" span.context().spanType == DDSpanTypes.WEB_SERVLET !span.context().getErrorFlag() span.context().parentId != 0 // parent should be the okhttp call. @@ -134,7 +134,7 @@ class JettyServletTest extends AgentTestRunner { def span = trace[0] span.context().operationName == "servlet.request" - span.context().resourceName == "servlet.request" + span.context().resourceName == "GET /$path" span.context().spanType == DDSpanTypes.WEB_SERVLET span.context().getErrorFlag() span.context().parentId != 0 // parent should be the okhttp call. diff --git a/dd-java-agent/instrumentation/servlet-3/src/test/groovy/JettyServletTest.groovy b/dd-java-agent/instrumentation/servlet-3/src/test/groovy/JettyServletTest.groovy index 143e0394d0..db810dec93 100644 --- a/dd-java-agent/instrumentation/servlet-3/src/test/groovy/JettyServletTest.groovy +++ b/dd-java-agent/instrumentation/servlet-3/src/test/groovy/JettyServletTest.groovy @@ -1,7 +1,5 @@ import datadog.opentracing.DDSpan import datadog.opentracing.DDTracer -import datadog.opentracing.decorators.AbstractDecorator -import datadog.opentracing.decorators.DDDecoratorsFactory import datadog.trace.agent.test.AgentTestRunner import datadog.trace.api.DDSpanTypes import datadog.trace.common.writer.ListWriter @@ -54,10 +52,6 @@ class JettyServletTest extends AgentTestRunner { DDTracer tracer = new DDTracer(writer) def setup() { - final List decorators = DDDecoratorsFactory.createBuiltinDecorators() - for (final AbstractDecorator decorator : decorators) { - tracer.addDecorator(decorator) - } jettyServer = new Server(PORT) servletContext = new ServletContextHandler() diff --git a/dd-java-agent/instrumentation/servlet-3/src/test/groovy/TomcatServletTest.groovy b/dd-java-agent/instrumentation/servlet-3/src/test/groovy/TomcatServletTest.groovy index 2ac4cc4061..73377c9df8 100644 --- a/dd-java-agent/instrumentation/servlet-3/src/test/groovy/TomcatServletTest.groovy +++ b/dd-java-agent/instrumentation/servlet-3/src/test/groovy/TomcatServletTest.groovy @@ -1,7 +1,5 @@ import com.google.common.io.Files import datadog.opentracing.DDTracer -import datadog.opentracing.decorators.AbstractDecorator -import datadog.opentracing.decorators.DDDecoratorsFactory import datadog.trace.agent.test.AgentTestRunner import datadog.trace.api.DDSpanTypes import datadog.trace.common.writer.ListWriter @@ -35,11 +33,6 @@ class TomcatServletTest extends AgentTestRunner { DDTracer tracer = new DDTracer(writer) def setup() { - final List decorators = DDDecoratorsFactory.createBuiltinDecorators() - for (final AbstractDecorator decorator : decorators) { - tracer.addDecorator(decorator) - } - tomcatServer = new Tomcat() tomcatServer.setPort(PORT) diff --git a/dd-java-agent/testing/src/main/java/datadog/trace/agent/test/AgentTestRunner.java b/dd-java-agent/testing/src/main/java/datadog/trace/agent/test/AgentTestRunner.java index 36047957ac..70ee48336f 100644 --- a/dd-java-agent/testing/src/main/java/datadog/trace/agent/test/AgentTestRunner.java +++ b/dd-java-agent/testing/src/main/java/datadog/trace/agent/test/AgentTestRunner.java @@ -4,8 +4,6 @@ import ch.qos.logback.classic.Level; import ch.qos.logback.classic.Logger; import datadog.opentracing.DDSpan; import datadog.opentracing.DDTracer; -import datadog.opentracing.decorators.AbstractDecorator; -import datadog.opentracing.decorators.DDDecoratorsFactory; import datadog.trace.agent.tooling.AgentInstaller; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.common.writer.ListWriter; @@ -78,10 +76,6 @@ public abstract class AgentTestRunner extends Specification { }; TEST_TRACER = new DDTracer(TEST_WRITER); - final List decorators = DDDecoratorsFactory.createBuiltinDecorators(); - for (final AbstractDecorator decorator : decorators) { - ((DDTracer) TEST_TRACER).addDecorator(decorator); - } ByteBuddyAgent.install(); instrumentation = ByteBuddyAgent.getInstrumentation(); } diff --git a/dd-trace-ot/src/main/java/datadog/opentracing/DDTracer.java b/dd-trace-ot/src/main/java/datadog/opentracing/DDTracer.java index 935e9e6d26..c3ffc1d54e 100644 --- a/dd-trace-ot/src/main/java/datadog/opentracing/DDTracer.java +++ b/dd-trace-ot/src/main/java/datadog/opentracing/DDTracer.java @@ -92,13 +92,6 @@ public class DDTracer implements io.opentracing.Tracer { Sampler.Builder.forConfig(config), DDTraceConfig.parseMap(config.getProperty(DDTraceConfig.SPAN_TAGS))); log.debug("Using config: {}", config); - - // Create decorators from resource files - final List decorators = DDDecoratorsFactory.createBuiltinDecorators(); - for (final AbstractDecorator decorator : decorators) { - log.debug("Loading decorator: {}", decorator.getClass().getSimpleName()); - addDecorator(decorator); - } } public DDTracer(final String serviceName, final Writer writer, final Sampler sampler) { @@ -126,6 +119,12 @@ public class DDTracer implements io.opentracing.Tracer { registerClassLoader(ClassLoader.getSystemClassLoader()); + final List decorators = DDDecoratorsFactory.createBuiltinDecorators(); + for (final AbstractDecorator decorator : decorators) { + log.debug("Loading decorator: {}", decorator.getClass().getSimpleName()); + addDecorator(decorator); + } + log.info("New instance: {}", this); }