Skip to content

Commit 1323af9

Browse files
authored
Merge branch 'master' into andrea.marziali/reactor-optimizable
2 parents 9ad2b7d + d3d6f9c commit 1323af9

File tree

127 files changed

+491
-366
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

127 files changed

+491
-366
lines changed

dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/HttpServerDecorator.java

+7-6
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
import datadog.trace.bootstrap.ActiveSubsystems;
2121
import datadog.trace.bootstrap.instrumentation.api.AgentPropagation;
2222
import datadog.trace.bootstrap.instrumentation.api.AgentSpan;
23+
import datadog.trace.bootstrap.instrumentation.api.AgentSpanContext;
2324
import datadog.trace.bootstrap.instrumentation.api.AgentTracer;
2425
import datadog.trace.bootstrap.instrumentation.api.ErrorPriorities;
2526
import datadog.trace.bootstrap.instrumentation.api.InternalSpanTypes;
@@ -121,22 +122,22 @@ protected AgentTracer.TracerAPI tracer() {
121122
return AgentTracer.get();
122123
}
123124

124-
public AgentSpan.Context.Extracted extract(REQUEST_CARRIER carrier) {
125+
public AgentSpanContext.Extracted extract(REQUEST_CARRIER carrier) {
125126
AgentPropagation.ContextVisitor<REQUEST_CARRIER> getter = getter();
126127
if (null == carrier || null == getter) {
127128
return null;
128129
}
129130
return tracer().propagate().extract(carrier, getter);
130131
}
131132

132-
/** Deprecated. Use {@link #startSpan(String, Object, AgentSpan.Context.Extracted)} instead. */
133+
/** Deprecated. Use {@link #startSpan(String, Object, AgentSpanContext.Extracted)} instead. */
133134
@Deprecated
134-
public AgentSpan startSpan(REQUEST_CARRIER carrier, AgentSpan.Context.Extracted context) {
135+
public AgentSpan startSpan(REQUEST_CARRIER carrier, AgentSpanContext.Extracted context) {
135136
return startSpan("http-server", carrier, context);
136137
}
137138

138139
public AgentSpan startSpan(
139-
String instrumentationName, REQUEST_CARRIER carrier, AgentSpan.Context.Extracted context) {
140+
String instrumentationName, REQUEST_CARRIER carrier, AgentSpanContext.Extracted context) {
140141
AgentSpan span =
141142
tracer()
142143
.startSpan(instrumentationName, spanName(), callIGCallbackStart(context))
@@ -156,7 +157,7 @@ public AgentSpan onRequest(
156157
final AgentSpan span,
157158
final CONNECTION connection,
158159
final REQUEST request,
159-
final AgentSpan.Context.Extracted context) {
160+
final AgentSpanContext.Extracted context) {
160161
Config config = Config.get();
161162
boolean clientIpResolverEnabled =
162163
config.isClientIpEnabled()
@@ -379,7 +380,7 @@ public AgentSpan onResponse(final AgentSpan span, final RESPONSE response) {
379380
// return super.onError(span, throwable);
380381
// }
381382

382-
private AgentSpan.Context.Extracted callIGCallbackStart(AgentSpan.Context.Extracted context) {
383+
private AgentSpanContext.Extracted callIGCallbackStart(AgentSpanContext.Extracted context) {
383384
AgentTracer.TracerAPI tracer = tracer();
384385
Supplier<Flow<Object>> startedCbAppSec =
385386
tracer.getCallbackProvider(RequestContextSlot.APPSEC).getCallback(EVENTS.requestStarted());

dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/http/ClientIpAddressResolver.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package datadog.trace.bootstrap.instrumentation.decorator.http;
22

33
import datadog.trace.api.interceptor.MutableSpan;
4-
import datadog.trace.bootstrap.instrumentation.api.AgentSpan;
4+
import datadog.trace.bootstrap.instrumentation.api.AgentSpanContext;
55
import datadog.trace.bootstrap.instrumentation.decorator.http.utils.IPAddressUtil;
66
import java.net.Inet4Address;
77
import java.net.Inet6Address;
@@ -28,7 +28,7 @@ public class ClientIpAddressResolver {
2828
* @param context extracted context with http headers
2929
* @return the inferred IP address, if any
3030
*/
31-
public static InetAddress resolve(AgentSpan.Context.Extracted context, MutableSpan span) {
31+
public static InetAddress resolve(AgentSpanContext.Extracted context, MutableSpan span) {
3232
try {
3333
return doResolve(context, span);
3434
} catch (RuntimeException rte) {
@@ -37,7 +37,7 @@ public static InetAddress resolve(AgentSpan.Context.Extracted context, MutableSp
3737
}
3838
}
3939

40-
private static InetAddress doResolve(AgentSpan.Context.Extracted context, MutableSpan span) {
40+
private static InetAddress doResolve(AgentSpanContext.Extracted context, MutableSpan span) {
4141
if (context == null) {
4242
return null;
4343
}

dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/rmi/ContextDispatcher.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
import static datadog.trace.bootstrap.instrumentation.rmi.ContextPropagator.PROPAGATOR;
66
import static datadog.trace.bootstrap.instrumentation.rmi.ThreadLocalContext.THREAD_LOCAL_CONTEXT;
77

8-
import datadog.trace.bootstrap.instrumentation.api.AgentSpan;
8+
import datadog.trace.bootstrap.instrumentation.api.AgentSpanContext;
99
import datadog.trace.bootstrap.instrumentation.api.ContextVisitors;
1010
import java.io.IOException;
1111
import java.io.ObjectInput;
@@ -42,7 +42,7 @@ public void dispatch(final Remote obj, final RemoteCall call) throws IOException
4242
if (PROPAGATOR.isOperationWithPayload(operationId)) {
4343
final ContextPayload payload = ContextPayload.read(in);
4444
if (payload != null) {
45-
final AgentSpan.Context context =
45+
final AgentSpanContext context =
4646
propagate().extract(payload.getContext(), ContextVisitors.stringValuesMap());
4747
THREAD_LOCAL_CONTEXT.set(context);
4848
}

dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/rmi/ThreadLocalContext.java

+5-5
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,21 @@
11
package datadog.trace.bootstrap.instrumentation.rmi;
22

3-
import datadog.trace.bootstrap.instrumentation.api.AgentSpan;
3+
import datadog.trace.bootstrap.instrumentation.api.AgentSpanContext;
44

55
public class ThreadLocalContext {
66
public static final ThreadLocalContext THREAD_LOCAL_CONTEXT = new ThreadLocalContext();
7-
private final ThreadLocal<AgentSpan.Context> local;
7+
private final ThreadLocal<AgentSpanContext> local;
88

99
public ThreadLocalContext() {
1010
local = new ThreadLocal<>();
1111
}
1212

13-
public void set(final AgentSpan.Context context) {
13+
public void set(final AgentSpanContext context) {
1414
local.set(context);
1515
}
1616

17-
public AgentSpan.Context getAndResetContext() {
18-
final AgentSpan.Context context = local.get();
17+
public AgentSpanContext getAndResetContext() {
18+
final AgentSpanContext context = local.get();
1919
if (context != null) {
2020
local.remove();
2121
}

dd-java-agent/agent-bootstrap/src/test/groovy/datadog/trace/bootstrap/instrumentation/decorator/HttpServerDecoratorTest.groovy

+7-6
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import datadog.trace.api.gateway.RequestContextSlot
1010
import datadog.trace.bootstrap.ActiveSubsystems
1111
import datadog.trace.bootstrap.instrumentation.api.AgentPropagation
1212
import datadog.trace.bootstrap.instrumentation.api.AgentSpan
13+
import datadog.trace.bootstrap.instrumentation.api.AgentSpanContext
1314
import datadog.trace.bootstrap.instrumentation.api.AgentTracer
1415
import datadog.trace.bootstrap.instrumentation.api.AgentTracer.TracerAPI
1516
import datadog.trace.bootstrap.instrumentation.api.ContextVisitors
@@ -174,7 +175,7 @@ class HttpServerDecoratorTest extends ServerDecoratorTest {
174175

175176
def "test onConnection"() {
176177
setup:
177-
def ctx = Mock(AgentSpan.Context.Extracted)
178+
def ctx = Mock(AgentSpanContext.Extracted)
178179
def decorator = newDecorator()
179180

180181
when:
@@ -227,7 +228,7 @@ class HttpServerDecoratorTest extends ServerDecoratorTest {
227228

228229
void 'preference for header derived vs peer ip address'() {
229230
setup:
230-
def ctx = Mock(AgentSpan.Context.Extracted)
231+
def ctx = Mock(AgentSpanContext.Extracted)
231232
def decorator = newDecorator()
232233

233234
when:
@@ -249,7 +250,7 @@ class HttpServerDecoratorTest extends ServerDecoratorTest {
249250
setup:
250251
injectSysConfig('dd.trace.client-ip.resolver.enabled', 'false')
251252

252-
def ctx = Mock(AgentSpan.Context.Extracted)
253+
def ctx = Mock(AgentSpanContext.Extracted)
253254
def decorator = newDecorator()
254255

255256
when:
@@ -265,7 +266,7 @@ class HttpServerDecoratorTest extends ServerDecoratorTest {
265266
setup:
266267
ActiveSubsystems.APPSEC_ACTIVE = false
267268

268-
def ctx = Mock(AgentSpan.Context.Extracted)
269+
def ctx = Mock(AgentSpanContext.Extracted)
269270
def decorator = newDecorator()
270271

271272
when:
@@ -282,7 +283,7 @@ class HttpServerDecoratorTest extends ServerDecoratorTest {
282283
injectSysConfig('dd.trace.client-ip.enabled', 'true')
283284
ActiveSubsystems.APPSEC_ACTIVE = false
284285

285-
def ctx = Mock(AgentSpan.Context.Extracted)
286+
def ctx = Mock(AgentSpanContext.Extracted)
286287
def decorator = newDecorator()
287288

288289
when:
@@ -303,7 +304,7 @@ class HttpServerDecoratorTest extends ServerDecoratorTest {
303304
setup:
304305
injectSysConfig('dd.trace.client-ip-header', 'my-header')
305306

306-
def ctx = Mock(AgentSpan.Context.Extracted)
307+
def ctx = Mock(AgentSpanContext.Extracted)
307308
def decorator = newDecorator()
308309

309310
when:

dd-java-agent/agent-bootstrap/src/test/groovy/datadog/trace/bootstrap/instrumentation/decorator/http/ClientIpAddressResolverSpecification.groovy

+7-7
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
package datadog.trace.bootstrap.instrumentation.decorator.http
22

33
import datadog.trace.api.interceptor.MutableSpan
4-
import datadog.trace.bootstrap.instrumentation.api.AgentSpan
4+
import datadog.trace.bootstrap.instrumentation.api.AgentSpanContext
55
import spock.lang.Specification
66

77
class ClientIpAddressResolverSpecification extends Specification {
88

99
void 'test with custom header value=#headerValue'() {
1010
setup:
1111
MutableSpan span = Stub()
12-
def context = Mock(AgentSpan.Context.Extracted)
12+
def context = Mock(AgentSpanContext.Extracted)
1313
1 * context.getCustomIpHeader() >> headerValue
1414

1515
expect:
@@ -34,7 +34,7 @@ class ClientIpAddressResolverSpecification extends Specification {
3434
setup:
3535
MutableSpan span = Stub()
3636
def method = "get${headerToCamelCase(header)}"
37-
def context = Mock(AgentSpan.Context.Extracted)
37+
def context = Mock(AgentSpanContext.Extracted)
3838
1 * context."$method"() >> headerValue
3939

4040
expect:
@@ -75,7 +75,7 @@ class ClientIpAddressResolverSpecification extends Specification {
7575
void 'test recognition strategy with custom header'() {
7676
setup:
7777
MutableSpan span = Stub()
78-
def context = Mock(AgentSpan.Context.Extracted)
78+
def context = Mock(AgentSpanContext.Extracted)
7979

8080
when:
8181
def ip = ClientIpAddressResolver.resolve(context, span)
@@ -90,7 +90,7 @@ class ClientIpAddressResolverSpecification extends Specification {
9090
void 'test recognition strategy without custom header'() {
9191
setup:
9292
MutableSpan span = Mock()
93-
def context = Mock(AgentSpan.Context.Extracted)
93+
def context = Mock(AgentSpanContext.Extracted)
9494

9595
when:
9696
def ip = ClientIpAddressResolver.resolve(context, span)
@@ -132,7 +132,7 @@ class ClientIpAddressResolverSpecification extends Specification {
132132
void 'no custom header public IP address is preferred'() {
133133
setup:
134134
MutableSpan span = Mock()
135-
def context = Mock(AgentSpan.Context.Extracted)
135+
def context = Mock(AgentSpanContext.Extracted)
136136

137137
when:
138138
def ip = ClientIpAddressResolver.resolve(context, span)
@@ -150,7 +150,7 @@ class ClientIpAddressResolverSpecification extends Specification {
150150
void 'no custom header all headers are reported'() {
151151
setup:
152152
MutableSpan span = Mock()
153-
def context = Mock(AgentSpan.Context.Extracted)
153+
def context = Mock(AgentSpanContext.Extracted)
154154

155155
when:
156156
def ip = ClientIpAddressResolver.resolve(context, span)

dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ProcessHierarchy.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
import datadog.trace.api.config.CiVisibilityConfig;
66
import datadog.trace.bootstrap.instrumentation.api.AgentPropagation;
7-
import datadog.trace.bootstrap.instrumentation.api.AgentSpan;
7+
import datadog.trace.bootstrap.instrumentation.api.AgentSpanContext;
88
import datadog.trace.util.Strings;
99
import java.net.InetSocketAddress;
1010
import java.util.Properties;
@@ -29,7 +29,7 @@ public void forEachKey(Properties carrier, AgentPropagation.KeyClassifier classi
2929
}
3030
}
3131

32-
@Nullable public final AgentSpan.Context.Extracted parentProcessModuleContext;
32+
@Nullable public final AgentSpanContext.Extracted parentProcessModuleContext;
3333

3434
ProcessHierarchy() {
3535
parentProcessModuleContext =

dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/AbstractTestModule.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import datadog.trace.api.civisibility.telemetry.CiVisibilityMetricCollector;
88
import datadog.trace.api.civisibility.telemetry.tag.EventType;
99
import datadog.trace.bootstrap.instrumentation.api.AgentSpan;
10+
import datadog.trace.bootstrap.instrumentation.api.AgentSpanContext;
1011
import datadog.trace.bootstrap.instrumentation.api.AgentTracer;
1112
import datadog.trace.bootstrap.instrumentation.api.InternalSpanTypes;
1213
import datadog.trace.bootstrap.instrumentation.api.Tags;
@@ -30,7 +31,7 @@ public abstract class AbstractTestModule {
3031
private final Consumer<AgentSpan> onSpanFinish;
3132

3233
public AbstractTestModule(
33-
AgentSpan.Context sessionSpanContext,
34+
AgentSpanContext sessionSpanContext,
3435
String moduleName,
3536
@Nullable Long startTime,
3637
InstrumentationType instrumentationType,

dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/AbstractTestSession.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
import datadog.trace.api.civisibility.telemetry.tag.Provider;
2121
import datadog.trace.api.sampling.PrioritySampling;
2222
import datadog.trace.bootstrap.instrumentation.api.AgentSpan;
23+
import datadog.trace.bootstrap.instrumentation.api.AgentSpanContext;
2324
import datadog.trace.bootstrap.instrumentation.api.AgentTracer;
2425
import datadog.trace.bootstrap.instrumentation.api.InternalSpanTypes;
2526
import datadog.trace.bootstrap.instrumentation.api.TagContext;
@@ -68,7 +69,7 @@ public AbstractTestSession(
6869
// CI Test Cycle protocol requires session's trace ID and span ID to be the same
6970
IdGenerationStrategy idGenerationStrategy = config.getIdGenerationStrategy();
7071
DDTraceId traceId = idGenerationStrategy.generateTraceId();
71-
AgentSpan.Context traceContext =
72+
AgentSpanContext traceContext =
7273
new TagContext(
7374
CIConstants.CIAPP_TEST_ORIGIN,
7475
Collections.emptyMap(),

dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/TestImpl.java

+3-2
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
import datadog.trace.api.gateway.RequestContextSlot;
2626
import datadog.trace.bootstrap.instrumentation.api.AgentScope;
2727
import datadog.trace.bootstrap.instrumentation.api.AgentSpan;
28+
import datadog.trace.bootstrap.instrumentation.api.AgentSpanContext;
2829
import datadog.trace.bootstrap.instrumentation.api.AgentTracer;
2930
import datadog.trace.bootstrap.instrumentation.api.InternalSpanTypes;
3031
import datadog.trace.bootstrap.instrumentation.api.TagContext;
@@ -55,7 +56,7 @@ public class TestImpl implements DDTest {
5556
private final TestContext context;
5657

5758
public TestImpl(
58-
AgentSpan.Context moduleSpanContext,
59+
AgentSpanContext moduleSpanContext,
5960
long suiteId,
6061
String moduleName,
6162
String testSuiteName,
@@ -87,7 +88,7 @@ public TestImpl(
8788

8889
this.context = new TestContextImpl(coverageStore);
8990

90-
AgentSpan.Context traceContext =
91+
AgentSpanContext traceContext =
9192
new TagContext(CIConstants.CIAPP_TEST_ORIGIN, Collections.emptyMap());
9293
AgentTracer.SpanBuilder spanBuilder =
9394
AgentTracer.get()

dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/TestSuiteImpl.java

+3-2
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
import datadog.trace.api.civisibility.telemetry.tag.TestFrameworkInstrumentation;
1414
import datadog.trace.bootstrap.instrumentation.api.AgentScope;
1515
import datadog.trace.bootstrap.instrumentation.api.AgentSpan;
16+
import datadog.trace.bootstrap.instrumentation.api.AgentSpanContext;
1617
import datadog.trace.bootstrap.instrumentation.api.AgentTracer;
1718
import datadog.trace.bootstrap.instrumentation.api.InternalSpanTypes;
1819
import datadog.trace.bootstrap.instrumentation.api.Tags;
@@ -33,7 +34,7 @@ public class TestSuiteImpl implements DDTestSuite {
3334

3435
private static final Logger log = LoggerFactory.getLogger(TestSuiteImpl.class);
3536

36-
private final AgentSpan.Context moduleSpanContext;
37+
private final AgentSpanContext moduleSpanContext;
3738
private final AgentSpan span;
3839
private final String moduleName;
3940
private final String testSuiteName;
@@ -52,7 +53,7 @@ public class TestSuiteImpl implements DDTestSuite {
5253
private final Consumer<AgentSpan> onSpanFinish;
5354

5455
public TestSuiteImpl(
55-
AgentSpan.Context moduleSpanContext,
56+
AgentSpanContext moduleSpanContext,
5657
String moduleName,
5758
String testSuiteName,
5859
String itrCorrelationId,

dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/buildsystem/BuildSystemModuleImpl.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
import datadog.trace.api.config.CiVisibilityConfig;
1515
import datadog.trace.bootstrap.instrumentation.api.AgentPropagation;
1616
import datadog.trace.bootstrap.instrumentation.api.AgentSpan;
17+
import datadog.trace.bootstrap.instrumentation.api.AgentSpanContext;
1718
import datadog.trace.bootstrap.instrumentation.api.Tags;
1819
import datadog.trace.civisibility.codeowners.Codeowners;
1920
import datadog.trace.civisibility.config.ExecutionSettings;
@@ -49,7 +50,7 @@ public class BuildSystemModuleImpl extends AbstractTestModule implements BuildSy
4950
private volatile boolean testSkippingEnabled;
5051

5152
public <T extends CoverageCalculator> BuildSystemModuleImpl(
52-
AgentSpan.Context sessionSpanContext,
53+
AgentSpanContext sessionSpanContext,
5354
String moduleName,
5455
String startCommand,
5556
@Nullable Long startTime,

dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/buildsystem/ProxyTestModule.java

+3-2
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import datadog.trace.api.civisibility.telemetry.CiVisibilityMetricCollector;
99
import datadog.trace.api.civisibility.telemetry.tag.TestFrameworkInstrumentation;
1010
import datadog.trace.bootstrap.instrumentation.api.AgentSpan;
11+
import datadog.trace.bootstrap.instrumentation.api.AgentSpanContext;
1112
import datadog.trace.bootstrap.instrumentation.api.Tags;
1213
import datadog.trace.civisibility.codeowners.Codeowners;
1314
import datadog.trace.civisibility.config.EarlyFlakeDetectionSettings;
@@ -41,7 +42,7 @@
4142
public class ProxyTestModule implements TestFrameworkModule {
4243
private static final Logger log = LoggerFactory.getLogger(ProxyTestModule.class);
4344

44-
private final AgentSpan.Context parentProcessModuleContext;
45+
private final AgentSpanContext parentProcessModuleContext;
4546
private final String moduleName;
4647
private final ExecutionStrategy executionStrategy;
4748
private final SignalClient.Factory signalClientFactory;
@@ -56,7 +57,7 @@ public class ProxyTestModule implements TestFrameworkModule {
5657
private final Collection<TestFramework> testFrameworks = ConcurrentHashMap.newKeySet();
5758

5859
public ProxyTestModule(
59-
AgentSpan.Context parentProcessModuleContext,
60+
AgentSpanContext parentProcessModuleContext,
6061
String moduleName,
6162
ExecutionStrategy executionStrategy,
6263
Config config,

0 commit comments

Comments
 (0)