diff --git a/dd-java-agent/instrumentation/java-lang/src/main/java/datadog/trace/instrumentation/java/lang/ProcessImplStartAdvice.java b/dd-java-agent/instrumentation/java-lang/src/main/java/datadog/trace/instrumentation/java/lang/ProcessImplStartAdvice.java index e08f01e53eb..b70ef1fbb4d 100644 --- a/dd-java-agent/instrumentation/java-lang/src/main/java/datadog/trace/instrumentation/java/lang/ProcessImplStartAdvice.java +++ b/dd-java-agent/instrumentation/java-lang/src/main/java/datadog/trace/instrumentation/java/lang/ProcessImplStartAdvice.java @@ -1,5 +1,7 @@ package datadog.trace.instrumentation.java.lang; +import static datadog.trace.util.AgentThreadFactory.AGENT_THREAD_GROUP; + import datadog.trace.bootstrap.instrumentation.api.AgentSpan; import datadog.trace.bootstrap.instrumentation.api.AgentTracer; import datadog.trace.bootstrap.instrumentation.api.TagContext; @@ -19,6 +21,11 @@ public static AgentSpan startSpan(@Advice.Argument(0) final String[] command) th return null; } + // Don't create spans for agent threads + if (AGENT_THREAD_GROUP.equals(Thread.currentThread().getThreadGroup())) { + return null; + } + AgentTracer.TracerAPI tracer = AgentTracer.get(); Map tags = ProcessImplInstrumentationHelpers.createTags(command);