From a111b47d2ae0ce3e5140109716d6d145b85df119 Mon Sep 17 00:00:00 2001 From: Stuart McCulloch Date: Fri, 14 Mar 2025 14:39:56 +0000 Subject: [PATCH] Remove ScopeSource enum --- .../src/test/groovy/TypeConverterTest.groovy | 5 ++-- .../src/test/groovy/TypeConverterTest.groovy | 5 ++-- .../src/test/groovy/TypeConverterTest.groovy | 5 ++-- .../java/datadog/trace/core/CoreTracer.java | 8 +++--- .../trace/core/monitor/HealthMetrics.java | 2 +- .../core/monitor/TracerHealthMetrics.java | 5 ++-- .../core/scopemanager/ContinuableScope.java | 11 +++++--- .../scopemanager/ContinuableScopeManager.java | 25 +++++++++++-------- .../trace/core/scopemanager/ScopeStack.java | 7 +++--- .../trace/core/PendingTraceBufferTest.groovy | 5 ++-- .../core/monitor/HealthMetricsTest.groovy | 9 +++---- .../scopemanager/ScopeManagerDepthTest.groovy | 5 ++-- .../core/scopemanager/ScopeManagerTest.groovy | 15 ++++++----- .../opentracing/TypeConverterTest.groovy | 5 ++-- .../instrumentation/api/ScopeSource.java | 17 ------------- 15 files changed, 56 insertions(+), 73 deletions(-) delete mode 100644 internal-api/src/main/java/datadog/trace/bootstrap/instrumentation/api/ScopeSource.java diff --git a/dd-java-agent/instrumentation/opentelemetry/opentelemetry-0.3/src/test/groovy/TypeConverterTest.groovy b/dd-java-agent/instrumentation/opentelemetry/opentelemetry-0.3/src/test/groovy/TypeConverterTest.groovy index 657d79cb67d..7bc4b64953b 100644 --- a/dd-java-agent/instrumentation/opentelemetry/opentelemetry-0.3/src/test/groovy/TypeConverterTest.groovy +++ b/dd-java-agent/instrumentation/opentelemetry/opentelemetry-0.3/src/test/groovy/TypeConverterTest.groovy @@ -3,7 +3,6 @@ import datadog.trace.api.DDSpanId import datadog.trace.api.DDTraceId import datadog.trace.api.sampling.PrioritySampling import datadog.trace.api.datastreams.NoopPathwayContext -import datadog.trace.bootstrap.instrumentation.api.ScopeSource import datadog.trace.core.DDSpan import datadog.trace.core.DDSpanContext import datadog.trace.core.PendingTrace @@ -52,8 +51,8 @@ class TypeConverterTest extends AgentTestRunner { def context = createTestSpanContext() def span1 = new DDSpan("test", 0, context, null) def span2 = new DDSpan("test", 0, context, null) - def scope1 = scopeManager.activate(span1, ScopeSource.MANUAL) - def scope2 = scopeManager.activate(span2, ScopeSource.MANUAL) + def scope1 = scopeManager.activateManualSpan(span1) + def scope2 = scopeManager.activateManualSpan(span2) expect: // return the same wrapper for the same scope typeConverter.toScope(scope1) is typeConverter.toScope(scope1) diff --git a/dd-java-agent/instrumentation/opentracing/api-0.31/src/test/groovy/TypeConverterTest.groovy b/dd-java-agent/instrumentation/opentracing/api-0.31/src/test/groovy/TypeConverterTest.groovy index 3728010d4ee..be34e94442a 100644 --- a/dd-java-agent/instrumentation/opentracing/api-0.31/src/test/groovy/TypeConverterTest.groovy +++ b/dd-java-agent/instrumentation/opentracing/api-0.31/src/test/groovy/TypeConverterTest.groovy @@ -3,7 +3,6 @@ import datadog.trace.api.DDSpanId import datadog.trace.api.DDTraceId import datadog.trace.api.sampling.PrioritySampling import datadog.trace.api.datastreams.NoopPathwayContext -import datadog.trace.bootstrap.instrumentation.api.ScopeSource import datadog.trace.core.DDSpan import datadog.trace.core.DDSpanContext import datadog.trace.core.PendingTrace @@ -57,8 +56,8 @@ class TypeConverterTest extends AgentTestRunner { def context = createTestSpanContext() def span1 = new DDSpan("test", 0, context, null) def span2 = new DDSpan("test", 0, context, null) - def scope1 = scopeManager.activate(span1, ScopeSource.MANUAL) - def scope2 = scopeManager.activate(span2, ScopeSource.MANUAL) + def scope1 = scopeManager.activateManualSpan(span1) + def scope2 = scopeManager.activateManualSpan(span2) expect: // return the same wrapper for the same scope typeConverter.toScope(scope1, true) is typeConverter.toScope(scope1, true) diff --git a/dd-java-agent/instrumentation/opentracing/api-0.32/src/test/groovy/TypeConverterTest.groovy b/dd-java-agent/instrumentation/opentracing/api-0.32/src/test/groovy/TypeConverterTest.groovy index ca3c4eaff49..c1855eb4657 100644 --- a/dd-java-agent/instrumentation/opentracing/api-0.32/src/test/groovy/TypeConverterTest.groovy +++ b/dd-java-agent/instrumentation/opentracing/api-0.32/src/test/groovy/TypeConverterTest.groovy @@ -3,7 +3,6 @@ import datadog.trace.api.DDSpanId import datadog.trace.api.DDTraceId import datadog.trace.api.sampling.PrioritySampling import datadog.trace.api.datastreams.NoopPathwayContext -import datadog.trace.bootstrap.instrumentation.api.ScopeSource import datadog.trace.core.DDSpan import datadog.trace.core.DDSpanContext import datadog.trace.core.PendingTrace @@ -57,8 +56,8 @@ class TypeConverterTest extends AgentTestRunner { def context = createTestSpanContext() def span1 = new DDSpan("test", 0, context, null) def span2 = new DDSpan("test", 0, context, null) - def scope1 = scopeManager.activate(span1, ScopeSource.MANUAL) - def scope2 = scopeManager.activate(span2, ScopeSource.MANUAL) + def scope1 = scopeManager.activateManualSpan(span1) + def scope2 = scopeManager.activateManualSpan(span2) expect: // return the same wrapper for the same scope typeConverter.toScope(scope1, true) is typeConverter.toScope(scope1, true) diff --git a/dd-trace-core/src/main/java/datadog/trace/core/CoreTracer.java b/dd-trace-core/src/main/java/datadog/trace/core/CoreTracer.java index 9a5dc7dc603..217b4d1a5b0 100644 --- a/dd-trace-core/src/main/java/datadog/trace/core/CoreTracer.java +++ b/dd-trace-core/src/main/java/datadog/trace/core/CoreTracer.java @@ -1,7 +1,6 @@ package datadog.trace.core; import static datadog.communication.monitor.DDAgentStatsDClientManager.statsDClientManager; -import static datadog.trace.api.ConfigDefaults.DEFAULT_ASYNC_PROPAGATING; import static datadog.trace.api.DDTags.DJM_ENABLED; import static datadog.trace.api.DDTags.DSM_ENABLED; import static datadog.trace.api.DDTags.PROFILING_CONTEXT_ENGINE; @@ -61,7 +60,6 @@ import datadog.trace.bootstrap.instrumentation.api.AgentTracer; import datadog.trace.bootstrap.instrumentation.api.BlackHoleSpan; import datadog.trace.bootstrap.instrumentation.api.ProfilingContextIntegration; -import datadog.trace.bootstrap.instrumentation.api.ScopeSource; import datadog.trace.bootstrap.instrumentation.api.ScopeState; import datadog.trace.bootstrap.instrumentation.api.TagContext; import datadog.trace.civisibility.interceptor.CiVisibilityApmProtocolInterceptor; @@ -908,12 +906,12 @@ public AgentSpan startSpan( @Override public AgentScope activateSpan(AgentSpan span) { - return scopeManager.activate(span, ScopeSource.INSTRUMENTATION, DEFAULT_ASYNC_PROPAGATING); + return scopeManager.activateSpan(span); } @Override public AgentScope activateManualSpan(final AgentSpan span) { - return scopeManager.activate(span, ScopeSource.MANUAL /* inherit async propagation flag */); + return scopeManager.activateManualSpan(span); } @Override @@ -923,7 +921,7 @@ public AgentScope.Continuation captureActiveSpan() { @Override public AgentScope.Continuation captureSpan(final AgentSpan span) { - return scopeManager.captureSpan(span, ScopeSource.INSTRUMENTATION.id()); + return scopeManager.captureSpan(span); } @Override diff --git a/dd-trace-core/src/main/java/datadog/trace/core/monitor/HealthMetrics.java b/dd-trace-core/src/main/java/datadog/trace/core/monitor/HealthMetrics.java index f0dd6cc8859..47ec862b258 100644 --- a/dd-trace-core/src/main/java/datadog/trace/core/monitor/HealthMetrics.java +++ b/dd-trace-core/src/main/java/datadog/trace/core/monitor/HealthMetrics.java @@ -51,7 +51,7 @@ public void onFinishSpan() {} public void onCreateTrace() {} - public void onScopeCloseError(int scopeSource) {} + public void onScopeCloseError(boolean manual) {} public void onCaptureContinuation() {} diff --git a/dd-trace-core/src/main/java/datadog/trace/core/monitor/TracerHealthMetrics.java b/dd-trace-core/src/main/java/datadog/trace/core/monitor/TracerHealthMetrics.java index 684a542dcd2..20d07843ab2 100644 --- a/dd-trace-core/src/main/java/datadog/trace/core/monitor/TracerHealthMetrics.java +++ b/dd-trace-core/src/main/java/datadog/trace/core/monitor/TracerHealthMetrics.java @@ -11,7 +11,6 @@ import datadog.trace.api.StatsDClient; import datadog.trace.api.cache.RadixTreeCache; -import datadog.trace.bootstrap.instrumentation.api.ScopeSource; import datadog.trace.common.writer.RemoteApi; import datadog.trace.core.DDSpan; import datadog.trace.util.AgentTaskScheduler; @@ -282,9 +281,9 @@ public void onCreateTrace() { } @Override - public void onScopeCloseError(int scopeSource) { + public void onScopeCloseError(boolean manual) { scopeCloseErrors.inc(); - if (scopeSource == ScopeSource.MANUAL.id()) { + if (manual) { userScopeCloseErrors.inc(); } } diff --git a/dd-trace-core/src/main/java/datadog/trace/core/scopemanager/ContinuableScope.java b/dd-trace-core/src/main/java/datadog/trace/core/scopemanager/ContinuableScope.java index a07333b11c8..7993f885f92 100644 --- a/dd-trace-core/src/main/java/datadog/trace/core/scopemanager/ContinuableScope.java +++ b/dd-trace-core/src/main/java/datadog/trace/core/scopemanager/ContinuableScope.java @@ -6,11 +6,16 @@ import datadog.trace.bootstrap.instrumentation.api.AgentScope; import datadog.trace.bootstrap.instrumentation.api.AgentSpan; import datadog.trace.bootstrap.instrumentation.api.AttachableWrapper; -import datadog.trace.bootstrap.instrumentation.api.ScopeSource; import java.util.concurrent.atomic.AtomicReferenceFieldUpdater; import javax.annotation.Nonnull; class ContinuableScope implements AgentScope, AttachableWrapper { + + // different sources of scopes + static final byte INSTRUMENTATION = 0; + static final byte MANUAL = 1; + static final byte ITERATION = 2; + private final ContinuableScopeManager scopeManager; final AgentSpan span; // package-private so scopeManager can access it directly @@ -58,8 +63,8 @@ public final void close() { } byte source = source(); - scopeManager.healthMetrics.onScopeCloseError(source); - if (source == ScopeSource.MANUAL.id() && scopeManager.strictMode) { + scopeManager.healthMetrics.onScopeCloseError(source == MANUAL); + if (source == MANUAL && scopeManager.strictMode) { throw new RuntimeException("Tried to close " + span + " scope when not on top"); } } diff --git a/dd-trace-core/src/main/java/datadog/trace/core/scopemanager/ContinuableScopeManager.java b/dd-trace-core/src/main/java/datadog/trace/core/scopemanager/ContinuableScopeManager.java index 83589add514..174d87e7503 100644 --- a/dd-trace-core/src/main/java/datadog/trace/core/scopemanager/ContinuableScopeManager.java +++ b/dd-trace-core/src/main/java/datadog/trace/core/scopemanager/ContinuableScopeManager.java @@ -3,6 +3,9 @@ import static datadog.trace.api.ConfigDefaults.DEFAULT_ASYNC_PROPAGATING; import static datadog.trace.bootstrap.instrumentation.api.AgentTracer.noopScope; import static datadog.trace.bootstrap.instrumentation.api.AgentTracer.noopSpan; +import static datadog.trace.core.scopemanager.ContinuableScope.INSTRUMENTATION; +import static datadog.trace.core.scopemanager.ContinuableScope.ITERATION; +import static datadog.trace.core.scopemanager.ContinuableScope.MANUAL; import static java.util.concurrent.TimeUnit.MINUTES; import static java.util.concurrent.TimeUnit.NANOSECONDS; import static java.util.concurrent.TimeUnit.SECONDS; @@ -16,7 +19,6 @@ import datadog.trace.bootstrap.instrumentation.api.AgentTracer; import datadog.trace.bootstrap.instrumentation.api.ProfilerContext; import datadog.trace.bootstrap.instrumentation.api.ProfilingContextIntegration; -import datadog.trace.bootstrap.instrumentation.api.ScopeSource; import datadog.trace.bootstrap.instrumentation.api.ScopeState; import datadog.trace.bootstrap.instrumentation.api.ScopeStateAware; import datadog.trace.core.monitor.HealthMetrics; @@ -39,6 +41,7 @@ * ScopeInterceptors to provide additional functionality. */ public final class ContinuableScopeManager implements ScopeStateAware { + static final Logger log = LoggerFactory.getLogger(ContinuableScopeManager.class); static final RatelimitedLogger ratelimitedLog = new RatelimitedLogger(log, 1, MINUTES); static final long iterationKeepAlive = @@ -82,13 +85,12 @@ public ContinuableScopeManager( this.profilingContextIntegration = profilingContextIntegration; } - public AgentScope activate(final AgentSpan span, final ScopeSource source) { - return activate(span, source.id(), false, /* ignored */ false); + public AgentScope activateSpan(final AgentSpan span) { + return activate(span, INSTRUMENTATION, true, DEFAULT_ASYNC_PROPAGATING); } - public AgentScope activate( - final AgentSpan span, final ScopeSource source, boolean isAsyncPropagating) { - return activate(span, source.id(), true, isAsyncPropagating); + public AgentScope activateManualSpan(final AgentSpan span) { + return activate(span, MANUAL, false, /* ignored */ false); } public AgentScope.Continuation captureActiveSpan() { @@ -100,7 +102,11 @@ public AgentScope.Continuation captureActiveSpan() { } } - public AgentScope.Continuation captureSpan(final AgentSpan span, byte source) { + public AgentScope.Continuation captureSpan(final AgentSpan span) { + return captureSpan(span, INSTRUMENTATION); + } + + private AgentScope.Continuation captureSpan(final AgentSpan span, byte source) { ScopeContinuation continuation = new ScopeContinuation(this, span, source); continuation.register(); healthMetrics.onCaptureContinuation(); @@ -193,7 +199,7 @@ public void closePrevious(final boolean finishSpan) { // close any immediately previous iteration scope final ContinuableScope top = scopeStack.top; - if (top != null && top.source() == ScopeSource.ITERATION.id()) { + if (top != null && top.source() == ITERATION) { if (iterationKeepAlive > 0) { // skip depth check because cancelling is cheap cancelRootIterationScopeCleanup(scopeStack, top); } @@ -223,8 +229,7 @@ public AgentScope activateNext(final AgentSpan span) { boolean asyncPropagation = top != null ? top.isAsyncPropagating() : DEFAULT_ASYNC_PROPAGATING; final ContinuableScope scope = - new ContinuableScope( - this, span, ScopeSource.ITERATION.id(), asyncPropagation, createScopeState(span)); + new ContinuableScope(this, span, ITERATION, asyncPropagation, createScopeState(span)); if (iterationKeepAlive > 0 && currentDepth == 0) { // no surrounding scope to aid cleanup, so use background task instead diff --git a/dd-trace-core/src/main/java/datadog/trace/core/scopemanager/ScopeStack.java b/dd-trace-core/src/main/java/datadog/trace/core/scopemanager/ScopeStack.java index 78ea56d7d8a..f7de0f7d101 100644 --- a/dd-trace-core/src/main/java/datadog/trace/core/scopemanager/ScopeStack.java +++ b/dd-trace-core/src/main/java/datadog/trace/core/scopemanager/ScopeStack.java @@ -1,7 +1,8 @@ package datadog.trace.core.scopemanager; +import static datadog.trace.core.scopemanager.ContinuableScope.ITERATION; + import datadog.trace.bootstrap.instrumentation.api.ProfilingContextIntegration; -import datadog.trace.bootstrap.instrumentation.api.ScopeSource; import java.util.ArrayDeque; /** @@ -77,7 +78,7 @@ boolean checkTop(final ContinuableScope expectedScope) { */ final boolean checkOverdueScopes(final ContinuableScope expectedScope) { // we already know 'top' isn't the expected scope, so just need to check its source - if (top == null || top.source() != ScopeSource.ITERATION.id()) { + if (top == null || top.source() != ITERATION) { return false; } // avoid calling close() as we're already in that method, instead just clear any @@ -86,7 +87,7 @@ final boolean checkOverdueScopes(final ContinuableScope expectedScope) { top.span.finishWithEndToEnd(); // now do the same for any previous iteration scopes ahead of the expected scope for (ContinuableScope scope : stack) { - if (scope.source() != ScopeSource.ITERATION.id()) { + if (scope.source() != ITERATION) { return expectedScope.equals(scope); } else { scope.clearReferences(); diff --git a/dd-trace-core/src/test/groovy/datadog/trace/core/PendingTraceBufferTest.groovy b/dd-trace-core/src/test/groovy/datadog/trace/core/PendingTraceBufferTest.groovy index eec8bb3befd..c0a97cfd3ed 100644 --- a/dd-trace-core/src/test/groovy/datadog/trace/core/PendingTraceBufferTest.groovy +++ b/dd-trace-core/src/test/groovy/datadog/trace/core/PendingTraceBufferTest.groovy @@ -8,7 +8,6 @@ import datadog.trace.api.DDTraceId import datadog.trace.api.flare.TracerFlare import datadog.trace.api.time.SystemTimeSource import datadog.trace.api.datastreams.NoopPathwayContext -import datadog.trace.bootstrap.instrumentation.api.ScopeSource import datadog.trace.context.TraceScope import datadog.trace.core.monitor.HealthMetrics import datadog.trace.core.propagation.PropagationTags @@ -495,8 +494,8 @@ class PendingTraceBufferTest extends DDSpecification { def addContinuation(DDSpan span) { - def scope = scopeManager.activate(span, ScopeSource.INSTRUMENTATION, true) - continuations << scopeManager.captureSpan(span, ScopeSource.INSTRUMENTATION.id()) + def scope = scopeManager.activateSpan(span) + continuations << scopeManager.captureSpan(span) scope.close() return span } diff --git a/dd-trace-core/src/test/groovy/datadog/trace/core/monitor/HealthMetricsTest.groovy b/dd-trace-core/src/test/groovy/datadog/trace/core/monitor/HealthMetricsTest.groovy index 9897af4ae4b..30bb3a77c9b 100644 --- a/dd-trace-core/src/test/groovy/datadog/trace/core/monitor/HealthMetricsTest.groovy +++ b/dd-trace-core/src/test/groovy/datadog/trace/core/monitor/HealthMetricsTest.groovy @@ -2,7 +2,6 @@ package datadog.trace.core.monitor import datadog.trace.api.StatsDClient import datadog.trace.api.sampling.PrioritySampling -import datadog.trace.bootstrap.instrumentation.api.ScopeSource import datadog.trace.common.writer.RemoteApi import datadog.trace.common.writer.RemoteWriter import spock.lang.Ignore @@ -365,21 +364,21 @@ class HealthMetricsTest extends Specification { } def "test onScopeCloseError"() { setup: - def latch = new CountDownLatch(1 + (source == ScopeSource.MANUAL ? 1 : 0)) + def latch = new CountDownLatch(1 + (manual ? 1 : 0)) def healthMetrics = new TracerHealthMetrics(new Latched(statsD, latch), 100, TimeUnit.MILLISECONDS) healthMetrics.start() when: - healthMetrics.onScopeCloseError(source.id()) + healthMetrics.onScopeCloseError(manual) latch.await(5, TimeUnit.SECONDS) then: 1 * statsD.count("scope.close.error", 1, _) - if (source == ScopeSource.MANUAL) { + if (manual) { 1 * statsD.count("scope.user.close.error", 1, _) } cleanup: healthMetrics.close() where: - source << ScopeSource.values() + manual << [false, true] } def "test onScopeStackOverflow"() { setup: diff --git a/dd-trace-core/src/test/groovy/datadog/trace/core/scopemanager/ScopeManagerDepthTest.groovy b/dd-trace-core/src/test/groovy/datadog/trace/core/scopemanager/ScopeManagerDepthTest.groovy index 8e4cd6c7644..4c7a1176ee7 100644 --- a/dd-trace-core/src/test/groovy/datadog/trace/core/scopemanager/ScopeManagerDepthTest.groovy +++ b/dd-trace-core/src/test/groovy/datadog/trace/core/scopemanager/ScopeManagerDepthTest.groovy @@ -3,7 +3,6 @@ package datadog.trace.core.scopemanager import datadog.trace.api.config.TracerConfig import datadog.trace.bootstrap.instrumentation.api.AgentScope import datadog.trace.bootstrap.instrumentation.api.AgentSpan -import datadog.trace.bootstrap.instrumentation.api.ScopeSource import datadog.trace.common.writer.ListWriter import datadog.trace.core.test.DDCoreSpecification @@ -35,7 +34,7 @@ class ScopeManagerDepthTest extends DDCoreSpecification { scope == noopScope() when: "activate a noop scope over the limit" - scope = scopeManager.activate(noopSpan(), ScopeSource.MANUAL) + scope = scopeManager.activateManualSpan(noopSpan()) then: "still have a noop instance" scope == noopScope() @@ -77,7 +76,7 @@ class ScopeManagerDepthTest extends DDCoreSpecification { scopeManager.scopeStack().depth() == defaultLimit + 1 when: "activate a noop span" - scope = scopeManager.activate(noopSpan(), ScopeSource.MANUAL) + scope = scopeManager.activateManualSpan(noopSpan()) then: "a real instance is still returned" scope != noopScope() diff --git a/dd-trace-core/src/test/groovy/datadog/trace/core/scopemanager/ScopeManagerTest.groovy b/dd-trace-core/src/test/groovy/datadog/trace/core/scopemanager/ScopeManagerTest.groovy index 819783d2ae7..b337609873c 100644 --- a/dd-trace-core/src/test/groovy/datadog/trace/core/scopemanager/ScopeManagerTest.groovy +++ b/dd-trace-core/src/test/groovy/datadog/trace/core/scopemanager/ScopeManagerTest.groovy @@ -9,7 +9,6 @@ import datadog.trace.api.scopemanager.ExtendedScopeListener import datadog.trace.bootstrap.instrumentation.api.AgentScope import datadog.trace.bootstrap.instrumentation.api.AgentSpan import datadog.trace.bootstrap.instrumentation.api.ProfilingContextIntegration -import datadog.trace.bootstrap.instrumentation.api.ScopeSource import datadog.trace.common.writer.ListWriter import datadog.trace.api.scopemanager.ScopeListener import datadog.trace.context.TraceScope @@ -156,7 +155,7 @@ class ScopeManagerTest extends DDCoreSpecification { def "non-ddspan activation results in a continuable scope"() { when: - def scope = scopeManager.activate(noopSpan(), ScopeSource.INSTRUMENTATION) + def scope = scopeManager.activateSpan(noopSpan()) then: scopeManager.active() == scope @@ -443,14 +442,14 @@ class ScopeManagerTest extends DDCoreSpecification { def state = Mock(Stateful) when: - AgentScope scope1 = scopeManager.activate(span, ScopeSource.INSTRUMENTATION) + AgentScope scope1 = scopeManager.activateSpan(span) then: assertEvents([ACTIVATE]) 1 * profilingContext.newScopeState(_) >> state when: - AgentScope scope2 = scopeManager.activate(span, ScopeSource.INSTRUMENTATION) + AgentScope scope2 = scopeManager.activateSpan(span) then: 'Activating the same span multiple times does not create a new scope' assertEvents([ACTIVATE]) @@ -638,13 +637,13 @@ class ScopeManagerTest extends DDCoreSpecification { def span = tracer.buildSpan("test", "test").start() when: - AgentScope scope1 = scopeManager.activate(span, ScopeSource.INSTRUMENTATION) + AgentScope scope1 = scopeManager.activateSpan(span) then: assertEvents([ACTIVATE]) when: - AgentScope scope2 = scopeManager.activate(span, ScopeSource.INSTRUMENTATION) + AgentScope scope2 = scopeManager.activateSpan(span) then: 'Activating the same span multiple times does not create a new scope' assertEvents([ACTIVATE]) @@ -874,7 +873,7 @@ class ScopeManagerTest extends DDCoreSpecification { def span = tracer.buildSpan("test", "test").start() when: - AgentScope scope = scopeManager.activate(span, ScopeSource.INSTRUMENTATION) + AgentScope scope = scopeManager.activateSpan(span) then: assertEvents([ACTIVATE]) @@ -904,7 +903,7 @@ class ScopeManagerTest extends DDCoreSpecification { def span = tracer.buildSpan("test", "test").start() when: - AgentScope scope = scopeManager.activate(span, ScopeSource.INSTRUMENTATION) + AgentScope scope = scopeManager.activateSpan(span) then: assertEvents([ACTIVATE]) diff --git a/dd-trace-ot/src/test/groovy/datadog/opentracing/TypeConverterTest.groovy b/dd-trace-ot/src/test/groovy/datadog/opentracing/TypeConverterTest.groovy index 2bdceb91b0f..a9e5f7a8494 100644 --- a/dd-trace-ot/src/test/groovy/datadog/opentracing/TypeConverterTest.groovy +++ b/dd-trace-ot/src/test/groovy/datadog/opentracing/TypeConverterTest.groovy @@ -4,7 +4,6 @@ import datadog.trace.api.DDSpanId import datadog.trace.api.DDTraceId import datadog.trace.api.sampling.PrioritySampling import datadog.trace.api.datastreams.NoopPathwayContext -import datadog.trace.bootstrap.instrumentation.api.ScopeSource import datadog.trace.core.CoreTracer import datadog.trace.core.DDSpan import datadog.trace.core.DDSpanContext @@ -58,8 +57,8 @@ class TypeConverterTest extends DDSpecification { def context = createTestSpanContext() def span1 = new DDSpan("test", 0, context, null) def span2 = new DDSpan("test", 0, context, null) - def scope1 = scopeManager.activate(span1, ScopeSource.MANUAL) - def scope2 = scopeManager.activate(span2, ScopeSource.MANUAL) + def scope1 = scopeManager.activateManualSpan(span1) + def scope2 = scopeManager.activateManualSpan(span2) expect: // return the same wrapper for the same scope typeConverter.toScope(scope1, true) is typeConverter.toScope(scope1, true) diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/instrumentation/api/ScopeSource.java b/internal-api/src/main/java/datadog/trace/bootstrap/instrumentation/api/ScopeSource.java deleted file mode 100644 index b801c83273f..00000000000 --- a/internal-api/src/main/java/datadog/trace/bootstrap/instrumentation/api/ScopeSource.java +++ /dev/null @@ -1,17 +0,0 @@ -package datadog.trace.bootstrap.instrumentation.api; - -public enum ScopeSource { - INSTRUMENTATION((byte) 0), - MANUAL((byte) 1), - ITERATION((byte) 2); - - private final byte id; - - ScopeSource(byte id) { - this.id = id; - } - - public byte id() { - return id; - } -}