Use builtin decorators for every DDTracer

This commit is contained in:
Andrew Kent 2018-03-13 10:32:26 -07:00
parent b5b38ee4b1
commit 10e12a666a
5 changed files with 8 additions and 28 deletions

View File

@ -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.

View File

@ -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<AbstractDecorator> decorators = DDDecoratorsFactory.createBuiltinDecorators()
for (final AbstractDecorator decorator : decorators) {
tracer.addDecorator(decorator)
}
jettyServer = new Server(PORT)
servletContext = new ServletContextHandler()

View File

@ -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<AbstractDecorator> decorators = DDDecoratorsFactory.createBuiltinDecorators()
for (final AbstractDecorator decorator : decorators) {
tracer.addDecorator(decorator)
}
tomcatServer = new Tomcat()
tomcatServer.setPort(PORT)

View File

@ -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<AbstractDecorator> decorators = DDDecoratorsFactory.createBuiltinDecorators();
for (final AbstractDecorator decorator : decorators) {
((DDTracer) TEST_TRACER).addDecorator(decorator);
}
ByteBuddyAgent.install();
instrumentation = ByteBuddyAgent.getInstrumentation();
}

View File

@ -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<AbstractDecorator> 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<AbstractDecorator> decorators = DDDecoratorsFactory.createBuiltinDecorators();
for (final AbstractDecorator decorator : decorators) {
log.debug("Loading decorator: {}", decorator.getClass().getSimpleName());
addDecorator(decorator);
}
log.info("New instance: {}", this);
}