diff --git a/dd-java-agent/agent-bootstrap/src/jmh/java/datadog/trace/bootstrap/instrumentation/decorator/HttpServerDecoratorBenchmark.java b/dd-java-agent/agent-bootstrap/src/jmh/java/datadog/trace/bootstrap/instrumentation/decorator/HttpServerDecoratorBenchmark.java index f29efc9251a..e655c3213cd 100644 --- a/dd-java-agent/agent-bootstrap/src/jmh/java/datadog/trace/bootstrap/instrumentation/decorator/HttpServerDecoratorBenchmark.java +++ b/dd-java-agent/agent-bootstrap/src/jmh/java/datadog/trace/bootstrap/instrumentation/decorator/HttpServerDecoratorBenchmark.java @@ -32,6 +32,7 @@ import org.openjdk.jmh.annotations.Setup; import org.openjdk.jmh.annotations.State; import org.openjdk.jmh.annotations.Warmup; +import org.openjdk.jmh.infra.Blackhole; @State(Scope.Benchmark) @Warmup(iterations = 4, time = 30, timeUnit = SECONDS) @@ -64,8 +65,9 @@ public void setUp() { } @Benchmark - public AgentSpan onRequest() { - return decorator.onRequest(span, null, request, root()); + public void onRequest(Blackhole bh) { + decorator.onRequest(span, null, request, root()); + bh.consume(span); } public static class Request { diff --git a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/BaseDecorator.java b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/BaseDecorator.java index 2628e9416cf..b52de4fa192 100644 --- a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/BaseDecorator.java +++ b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/BaseDecorator.java @@ -90,7 +90,7 @@ protected boolean traceAnalyticsDefault() { return false; } - public AgentSpan afterStart(final AgentSpan span) { + public void afterStart(final AgentSpan span) { if (spanType() != null) { span.setSpanType(spanType()); } @@ -104,64 +104,52 @@ public AgentSpan afterStart(final AgentSpan span) { // null handled by setMetric span.setMetric(traceAnalyticsEntry); - - return span; } - public ContextScope beforeFinish(final ContextScope scope) { + public void beforeFinish(final ContextScope scope) { beforeFinish(scope.context()); - return scope; } - public AgentSpan beforeFinish(final AgentSpan span) { - return span; - } + public void beforeFinish(final AgentSpan span) {} - public Context beforeFinish(final Context context) { - return context; - } + public void beforeFinish(final Context context) {} - public AgentScope onError(final AgentScope scope, final Throwable throwable) { + public void onError(final AgentScope scope, final Throwable throwable) { if (scope != null) { onError(scope.span(), throwable); } - return scope; } - public AgentSpan onError(final AgentSpan span, final Throwable throwable) { - return onError(span, throwable, ErrorPriorities.DEFAULT); + public void onError(final AgentSpan span, final Throwable throwable) { + onError(span, throwable, ErrorPriorities.DEFAULT); } - public AgentSpan onError(final AgentSpan span, final Throwable throwable, byte errorPriority) { + public void onError(final AgentSpan span, final Throwable throwable, byte errorPriority) { if (throwable != null && span != null) { span.addThrowable( throwable instanceof ExecutionException ? throwable.getCause() : throwable, errorPriority); } - return span; } - public ContextScope onError(final ContextScope scope, final Throwable throwable) { + public void onError(final ContextScope scope, final Throwable throwable) { if (scope != null) { onError(AgentSpan.fromContext(scope.context()), throwable); } - return scope; } - public AgentSpan onPeerConnection( - final AgentSpan span, final InetSocketAddress remoteConnection) { + public void onPeerConnection(final AgentSpan span, final InetSocketAddress remoteConnection) { if (remoteConnection != null) { onPeerConnection(span, remoteConnection.getAddress(), !remoteConnection.isUnresolved()); setPeerPort(span, remoteConnection.getPort()); } - return span; } - public AgentSpan onPeerConnection(final AgentSpan span, final InetAddress remoteAddress) { - return onPeerConnection(span, remoteAddress, true); + public void onPeerConnection(final AgentSpan span, final InetAddress remoteAddress) { + onPeerConnection(span, remoteAddress, true); } - public AgentSpan onPeerConnection(AgentSpan span, InetAddress remoteAddress, boolean resolved) { + public void onPeerConnection(AgentSpan span, InetAddress remoteAddress, boolean resolved) { if (remoteAddress != null) { String ip = remoteAddress.getHostAddress(); if (resolved && Config.get().isPeerHostNameEnabled()) { @@ -173,20 +161,16 @@ public AgentSpan onPeerConnection(AgentSpan span, InetAddress remoteAddress, boo span.setTag(Tags.PEER_HOST_IPV6, ip); } } - return span; } - public AgentSpan setPeerPort(AgentSpan span, String port) { + public void setPeerPort(AgentSpan span, String port) { span.setTag(Tags.PEER_PORT, port); - - return span; } - public AgentSpan setPeerPort(AgentSpan span, int port) { + public void setPeerPort(AgentSpan span, int port) { if (port > UNSET_PORT) { span.setTag(Tags.PEER_PORT, port); } - return span; } /** diff --git a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/ClientDecorator.java b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/ClientDecorator.java index 99dec2dbc08..681a0e7a9d8 100644 --- a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/ClientDecorator.java +++ b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/ClientDecorator.java @@ -32,7 +32,7 @@ protected String spanKind() { } @Override - public AgentSpan afterStart(final AgentSpan span) { + public void afterStart(final AgentSpan span) { final String service = service(); if (service != null) { span.setServiceName(service, component()); @@ -41,6 +41,6 @@ public AgentSpan afterStart(final AgentSpan span) { // Generate metrics for all client spans. span.setMeasured(true); - return super.afterStart(span); + super.afterStart(span); } } diff --git a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/DBTypeProcessingDatabaseClientDecorator.java b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/DBTypeProcessingDatabaseClientDecorator.java index f1d5588c49f..cc99851b5e7 100644 --- a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/DBTypeProcessingDatabaseClientDecorator.java +++ b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/DBTypeProcessingDatabaseClientDecorator.java @@ -6,8 +6,8 @@ public abstract class DBTypeProcessingDatabaseClientDecorator extends DatabaseClientDecorator { @Override - public AgentSpan afterStart(AgentSpan span) { + public void afterStart(AgentSpan span) { processDatabaseType(span, dbType()); - return super.afterStart(span); + super.afterStart(span); } } diff --git a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/DatabaseClientDecorator.java b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/DatabaseClientDecorator.java index 7336a059bdc..fa105776113 100644 --- a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/DatabaseClientDecorator.java +++ b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/DatabaseClientDecorator.java @@ -66,9 +66,8 @@ public String getDbType() { * * @param span * @param connection - * @return */ - public AgentSpan onConnection(final AgentSpan span, final CONNECTION connection) { + public void onConnection(final AgentSpan span, final CONNECTION connection) { if (connection != null) { span.setTag(Tags.DB_USER, dbUser(connection)); onInstance(span, dbInstance(connection)); @@ -81,10 +80,9 @@ public AgentSpan onConnection(final AgentSpan span, final CONNECTION connection) } } } - return span; } - protected AgentSpan onInstance(final AgentSpan span, final String dbInstance) { + protected void onInstance(final AgentSpan span, final String dbInstance) { if (dbInstance != null) { span.setTag(Tags.DB_INSTANCE, dbInstance); String serviceName = dbClientService(dbInstance); @@ -92,7 +90,6 @@ protected AgentSpan onInstance(final AgentSpan span, final String dbInstance) { span.setServiceName(serviceName, component()); } } - return span; } public String dbService(final String dbType, final String instanceName) { @@ -114,9 +111,8 @@ public String dbClientService(final String instanceName) { return service; } - public AgentSpan onStatement(final AgentSpan span, final CharSequence statement) { + public void onStatement(final AgentSpan span, final CharSequence statement) { span.setResourceName(statement); - return span; } /** diff --git a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/HttpClientDecorator.java b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/HttpClientDecorator.java index 42214929571..d446064c2fb 100644 --- a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/HttpClientDecorator.java +++ b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/HttpClientDecorator.java @@ -92,7 +92,7 @@ protected boolean shouldSetResourceName() { } }; - public AgentSpan onRequest(final AgentSpan span, final REQUEST request) { + public void onRequest(final AgentSpan span, final REQUEST request) { if (request != null) { AgentTracer.get() .getDataStreamsMonitoring() @@ -143,10 +143,9 @@ public AgentSpan onRequest(final AgentSpan span, final REQUEST request) { ssrfIastCheck(request); } } - return span; } - public AgentSpan onResponse(final AgentSpan span, final RESPONSE response) { + public void onResponse(final AgentSpan span, final RESPONSE response) { if (response != null) { final int status = status(response); if (status > UNSET_STATUS) { @@ -166,7 +165,6 @@ public AgentSpan onResponse(final AgentSpan span, final RESPONSE response) { } } } - return span; } public String operationName() { diff --git a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/HttpServerDecorator.java b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/HttpServerDecorator.java index ed2b171778d..42f459e1385 100644 --- a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/HttpServerDecorator.java +++ b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/HttpServerDecorator.java @@ -237,7 +237,7 @@ private void resetServiceNameIfUnderInferredProxy(Context parentContext, AgentSp } }; - public AgentSpan onRequest( + public void onRequest( final AgentSpan span, final CONNECTION connection, final REQUEST request, @@ -428,7 +428,6 @@ public AgentSpan onRequest( DataStreamsTransactionExtractor.Type.HTTP_IN_HEADERS, request, DSM_TRANSACTION_SOURCE_READER); - return span; } protected static AgentSpanContext.Extracted getExtractedSpanContext(Context parentContext) { @@ -449,7 +448,7 @@ protected BlockResponseFunction createBlockResponseFunction( return null; } - public AgentSpan onResponseStatus(final AgentSpan span, final int status) { + public void onResponseStatus(final AgentSpan span, final int status) { if (status > UNSET_STATUS) { span.setHttpStatusCode(status); // explicitly set here because some other decorators might already set an error without @@ -465,7 +464,6 @@ public AgentSpan onResponseStatus(final AgentSpan span, final int status) { if (SHOULD_SET_404_RESOURCE_NAME && status == 404) { span.setResourceName(NOT_FOUND_RESOURCE_NAME, ResourceNamePriorities.HTTP_404); } - return span; } /** @@ -483,7 +481,7 @@ protected boolean isAppSecOnResponseSeparate() { return false; } - public AgentSpan onResponse(final AgentSpan span, final RESPONSE response) { + public void onResponse(final AgentSpan span, final RESPONSE response) { if (response != null) { final int status = status(response); onResponseStatus(span, status); @@ -501,7 +499,6 @@ public AgentSpan onResponse(final AgentSpan span, final RESPONSE response) { callIGCallbackResponseAndHeaders(span, response, status); } } - return span; } private AgentSpanContext callIGCallbackStart(@Nullable final AgentSpanContext extracted) { @@ -536,13 +533,12 @@ private AgentSpanContext callIGCallbackStart(@Nullable final AgentSpanContext ex } @Override - public AgentSpan onError(final AgentSpan span, final Throwable throwable) { + public void onError(final AgentSpan span, final Throwable throwable) { if (throwable != null) { span.addThrowable( throwable instanceof ExecutionException ? throwable.getCause() : throwable, ErrorPriorities.HTTP_SERVER_DECORATOR); } - return span; } private Flow callIGCallbackRequestHeaders(AgentSpan span, REQUEST_CARRIER carrier) { @@ -639,7 +635,7 @@ private Flow callIGCallbackURI( } @Override - public Context beforeFinish(Context context) { + public void beforeFinish(Context context) { AgentSpan span = AgentSpan.fromContext(context); if (span != null) { onRequestEndForInstrumentationGateway(span); @@ -648,7 +644,7 @@ public Context beforeFinish(Context context) { // Close Serverless Gateway Inferred Span if any finishInferredProxySpan(context); - return super.beforeFinish(context); + super.beforeFinish(context); } protected void finishInferredProxySpan(Context context) { diff --git a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/MessagingClientDecorator.java b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/MessagingClientDecorator.java index 2431575a378..23d15297249 100644 --- a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/MessagingClientDecorator.java +++ b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/MessagingClientDecorator.java @@ -20,10 +20,10 @@ protected boolean endToEndDurationsDefault() { } @Override - public AgentSpan afterStart(final AgentSpan span) { + public void afterStart(final AgentSpan span) { if (endToEndDurationsEnabled) { span.beginEndToEnd(); } - return super.afterStart(span); + super.afterStart(span); } } diff --git a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/OrmClientDecorator.java b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/OrmClientDecorator.java index 092c6d385c1..478525c3072 100644 --- a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/OrmClientDecorator.java +++ b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/OrmClientDecorator.java @@ -6,13 +6,12 @@ public abstract class OrmClientDecorator extends DatabaseClientDecorator { public abstract CharSequence entityName(final Object entity); - public AgentSpan onOperation(final AgentSpan span, final Object entity) { + public void onOperation(final AgentSpan span, final Object entity) { if (entity != null) { final CharSequence name = entityName(entity); if (name != null) { span.setResourceName(name); } // else we keep any existing resource. } - return span; } } diff --git a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/ServerDecorator.java b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/ServerDecorator.java index 20b11038ffd..cb0fcfe1f64 100644 --- a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/ServerDecorator.java +++ b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/ServerDecorator.java @@ -12,10 +12,10 @@ public abstract class ServerDecorator extends BaseDecorator { TagMap.Entry.create(DDTags.LANGUAGE_TAG_KEY, DDTags.LANGUAGE_TAG_VALUE); @Override - public AgentSpan afterStart(final AgentSpan span) { + public void afterStart(final AgentSpan span) { span.setTag(SPAN_KIND_ENTRY); span.setTag(LANG_ENTRY); - return super.afterStart(span); + super.afterStart(span); } } diff --git a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/WebsocketDecorator.java b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/WebsocketDecorator.java index 6684c4a7043..c539a71e1f1 100644 --- a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/WebsocketDecorator.java +++ b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/WebsocketDecorator.java @@ -57,12 +57,13 @@ protected CharSequence component() { } @Override - public AgentSpan afterStart(AgentSpan span) { - return super.afterStart(span).setMeasured(true); + public void afterStart(AgentSpan span) { + super.afterStart(span); + span.setMeasured(true); } @Nonnull - public AgentSpan onReceiveFrameStart( + public AgentSpan startInboundFrameSpan( final HandlerContext.Receiver handlerContext, final Object data, boolean partialDelivery) { handlerContext.recordChunkData(data, partialDelivery); return onFrameStart( @@ -70,7 +71,7 @@ public AgentSpan onReceiveFrameStart( } @Nonnull - public AgentSpan onSessionCloseIssued( + public AgentSpan startOutboundCloseSpan( final HandlerContext.Sender handlerContext, CharSequence closeReason, int closeCode) { return onFrameStart( WEBSOCKET_CLOSE, SPAN_KIND_PRODUCER, handlerContext, SPAN_ATTRIBUTES_SEND, false) @@ -79,7 +80,7 @@ public AgentSpan onSessionCloseIssued( } @Nonnull - public AgentSpan onSessionCloseReceived( + public AgentSpan startInboundCloseSpan( final HandlerContext.Receiver handlerContext, CharSequence closeReason, int closeCode) { return onFrameStart( WEBSOCKET_CLOSE, SPAN_KIND_CONSUMER, handlerContext, SPAN_ATTRIBUTES_RECEIVE, true) @@ -88,7 +89,7 @@ public AgentSpan onSessionCloseReceived( } @Nonnull - public AgentSpan onSendFrameStart( + public AgentSpan startOutboundFrameSpan( final HandlerContext.Sender handlerContext, final CharSequence msgType, final int msgSize) { handlerContext.recordChunkData(msgType, msgSize); return onFrameStart( @@ -116,7 +117,8 @@ public void onFrameEnd(final HandlerContext handlerContext) { wsSpan.setTag(WEBSOCKET_MESSAGE_LENGTH, handlerContext.getMsgSize()); wsSpan.setTag(WEBSOCKET_MESSAGE_TYPE, handlerContext.getMessageType()); } - (beforeFinish(wsSpan)).finish(); + beforeFinish(wsSpan); + wsSpan.finish(); } finally { handlerContext.reset(); } diff --git a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/http/HttpResourceDecorator.java b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/http/HttpResourceDecorator.java index 1458bd04eb1..72ca66a520f 100644 --- a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/http/HttpResourceDecorator.java +++ b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/http/HttpResourceDecorator.java @@ -18,25 +18,26 @@ public class HttpResourceDecorator { private HttpResourceDecorator() {} - public final AgentSpan withClientPath(AgentSpan span, CharSequence method, CharSequence path) { - return HttpResourceNames.setForClient(span, method, path, false); + public final void withClientPath(AgentSpan span, CharSequence method, CharSequence path) { + HttpResourceNames.setForClient(span, method, path, false); } - public final AgentSpan withServerPath( + public final void withServerPath( AgentSpan span, CharSequence method, CharSequence path, boolean encoded) { if (!shouldSetUrlResourceName) { - return span.setResourceName(DEFAULT_RESOURCE_NAME); + span.setResourceName(DEFAULT_RESOURCE_NAME); + return; } - return HttpResourceNames.setForServer(span, method, path, encoded); + HttpResourceNames.setForServer(span, method, path, encoded); } - public final AgentSpan withRoute( + public final void withRoute( final AgentSpan span, final CharSequence method, final CharSequence route) { - return withRoute(span, method, route, false); + withRoute(span, method, route, false); } - public final AgentSpan withRoute( + public final void withRoute( final AgentSpan span, final CharSequence method, final CharSequence route, boolean encoded) { CharSequence routeTag = route; if (encoded) { @@ -47,6 +48,5 @@ public final AgentSpan withRoute( final CharSequence resourceName = HttpResourceNames.join(method, route); span.setResourceName(resourceName, ResourceNamePriorities.HTTP_FRAMEWORK_ROUTE); } - return span; } } diff --git a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/rmi/RmiClientDecorator.java b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/rmi/RmiClientDecorator.java index 6d2a47b75f0..d89ddfb80b3 100644 --- a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/rmi/RmiClientDecorator.java +++ b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/rmi/RmiClientDecorator.java @@ -40,11 +40,10 @@ protected String service() { return null; } - public AgentSpan onMethodInvocation(final AgentSpan span, final Method method) { + public void onMethodInvocation(final AgentSpan span, final Method method) { span.setResourceName(spanNameForMethod(method)); span.setTag( Tags.RPC_SERVICE, METHOD_CACHE.computeIfAbsent(method, m -> m.getDeclaringClass().getName())); - return span; } } diff --git a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/rmi/RmiServerDecorator.java b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/rmi/RmiServerDecorator.java index 33d6b780ed6..b1900b03e43 100644 --- a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/rmi/RmiServerDecorator.java +++ b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/rmi/RmiServerDecorator.java @@ -29,8 +29,8 @@ protected CharSequence component() { } @Override - public AgentSpan afterStart(final AgentSpan span) { + public void afterStart(final AgentSpan span) { span.setMeasured(true); - return super.afterStart(span); + super.afterStart(span); } } diff --git a/dd-java-agent/instrumentation/aerospike-4.0/src/main/java/datadog/trace/instrumentation/aerospike4/AerospikeClientDecorator.java b/dd-java-agent/instrumentation/aerospike-4.0/src/main/java/datadog/trace/instrumentation/aerospike4/AerospikeClientDecorator.java index e00683755c9..134fed3a879 100644 --- a/dd-java-agent/instrumentation/aerospike-4.0/src/main/java/datadog/trace/instrumentation/aerospike4/AerospikeClientDecorator.java +++ b/dd-java-agent/instrumentation/aerospike-4.0/src/main/java/datadog/trace/instrumentation/aerospike4/AerospikeClientDecorator.java @@ -65,7 +65,7 @@ protected String dbHostname(final Node node) { return null; } - public AgentSpan onConnection( + public void onConnection( final AgentSpan span, final Node node, final Cluster cluster, final Partition partition) { onPeerConnection(span, node.getAddress()); @@ -85,8 +85,6 @@ public AgentSpan onConnection( span.setServiceName(instanceName, DB_CLIENT_SPLIT_BY_INSTANCE); } } - - return span; } public void withMethod(final AgentSpan span, final String methodName) { diff --git a/dd-java-agent/instrumentation/armeria/armeria-grpc-0.84/src/main/java/datadog/trace/instrumentation/armeria/grpc/client/GrpcClientDecorator.java b/dd-java-agent/instrumentation/armeria/armeria-grpc-0.84/src/main/java/datadog/trace/instrumentation/armeria/grpc/client/GrpcClientDecorator.java index ef945048118..d7a592ee72a 100644 --- a/dd-java-agent/instrumentation/armeria/armeria-grpc-0.84/src/main/java/datadog/trace/instrumentation/armeria/grpc/client/GrpcClientDecorator.java +++ b/dd-java-agent/instrumentation/armeria/armeria-grpc-0.84/src/main/java/datadog/trace/instrumentation/armeria/grpc/client/GrpcClientDecorator.java @@ -104,7 +104,8 @@ public AgentSpan startCall(MethodDescriptor method) { RPC_SERVICE_CACHE.computeIfAbsent( method.getFullMethodName(), MethodDescriptor::extractFullServiceName)); span.setResourceName(method.getFullMethodName()); - return afterStart(span); + afterStart(span); + return span; } public void injectContext(Context context, final C request, CarrierSetter setter) { @@ -114,7 +115,7 @@ public void injectContext(Context context, final C request, CarrierSetter defaultPropagator().inject(context, request, setter); } - public AgentSpan onClose(final AgentSpan span, final Status status) { + public void onClose(final AgentSpan span, final Status status) { span.setTag("status.code", status.getCode().name()); span.setTag("grpc.status.code", status.getCode().name()); @@ -124,6 +125,5 @@ public AgentSpan onClose(final AgentSpan span, final Status status) { // TODO why is there a mismatch between client / server for calling the onError method? onError(span, status.getCause()); span.setError(CLIENT_ERROR_STATUSES.get(status.getCode().value())); - return span; } } diff --git a/dd-java-agent/instrumentation/armeria/armeria-grpc-0.84/src/main/java/datadog/trace/instrumentation/armeria/grpc/server/GrpcServerDecorator.java b/dd-java-agent/instrumentation/armeria/armeria-grpc-0.84/src/main/java/datadog/trace/instrumentation/armeria/grpc/server/GrpcServerDecorator.java index 61a46648cc3..62050536186 100644 --- a/dd-java-agent/instrumentation/armeria/armeria-grpc-0.84/src/main/java/datadog/trace/instrumentation/armeria/grpc/server/GrpcServerDecorator.java +++ b/dd-java-agent/instrumentation/armeria/armeria-grpc-0.84/src/main/java/datadog/trace/instrumentation/armeria/grpc/server/GrpcServerDecorator.java @@ -79,12 +79,12 @@ protected CharSequence component() { } @Override - public AgentSpan afterStart(final AgentSpan span) { + public void afterStart(final AgentSpan span) { span.setMeasured(true); - return super.afterStart(span); + super.afterStart(span); } - public AgentSpan onCall(final AgentSpan span, ServerCall call) { + public void onCall(final AgentSpan span, ServerCall call) { if (TRIM_RESOURCE_PACKAGE_NAME) { span.setResourceName( cachedResourceNames.computeIfAbsent( @@ -92,33 +92,31 @@ public AgentSpan onCall(final AgentSpan span, ServerCall 0) { setPeerPort(span, port); } - - return span; } /** @@ -89,7 +87,7 @@ private String getInteractionVerbString(final int verb) { } } - public AgentSpan onECIInteraction(final AgentSpan span, final ECIInteractionSpec spec) { + public void onECIInteraction(final AgentSpan span, final ECIInteractionSpec spec) { final String interactionVerb = getInteractionVerbString(spec.getInteractionVerb()); final String functionName = spec.getFunctionName(); final String tranName = spec.getTranName(); @@ -107,7 +105,5 @@ public AgentSpan onECIInteraction(final AgentSpan span, final ECIInteractionSpec if (tpnName != null) { span.setTag("cics.tpn", tpnName); } - - return span; } } diff --git a/dd-java-agent/instrumentation/datanucleus-4.0.5/src/main/java/datadog/trace/instrumentation/datanucleus/DatanucleusDecorator.java b/dd-java-agent/instrumentation/datanucleus-4.0.5/src/main/java/datadog/trace/instrumentation/datanucleus/DatanucleusDecorator.java index bbd970de659..cbd9aa4d665 100644 --- a/dd-java-agent/instrumentation/datanucleus-4.0.5/src/main/java/datadog/trace/instrumentation/datanucleus/DatanucleusDecorator.java +++ b/dd-java-agent/instrumentation/datanucleus-4.0.5/src/main/java/datadog/trace/instrumentation/datanucleus/DatanucleusDecorator.java @@ -46,7 +46,7 @@ public CharSequence entityName(final Object entity) { return className(entity.getClass()); } - public AgentSpan setResourceFromIdOrClass(AgentSpan span, Object id, String className) { + public void setResourceFromIdOrClass(AgentSpan span, Object id, String className) { String targetClass = null; if (className != null) { targetClass = className; @@ -59,8 +59,6 @@ public AgentSpan setResourceFromIdOrClass(AgentSpan span, Object id, String clas if (targetClass != null && !targetClass.isEmpty()) { span.setResourceName(targetClass.substring(targetClass.lastIndexOf(".") + 1)); } - - return span; } @Override diff --git a/dd-java-agent/instrumentation/datastax-cassandra/datastax-cassandra-3.0/src/main/java/datadog/trace/instrumentation/datastax/cassandra/CassandraClientDecorator.java b/dd-java-agent/instrumentation/datastax-cassandra/datastax-cassandra-3.0/src/main/java/datadog/trace/instrumentation/datastax/cassandra/CassandraClientDecorator.java index 09f83cd84fa..ac3bfe440a8 100644 --- a/dd-java-agent/instrumentation/datastax-cassandra/datastax-cassandra-3.0/src/main/java/datadog/trace/instrumentation/datastax/cassandra/CassandraClientDecorator.java +++ b/dd-java-agent/instrumentation/datastax-cassandra/datastax-cassandra-3.0/src/main/java/datadog/trace/instrumentation/datastax/cassandra/CassandraClientDecorator.java @@ -78,12 +78,11 @@ protected String dbHostname(Session session) { return null; } - public AgentSpan onStatement(final AgentSpan span, final CharSequence statement) { + public void onStatement(final AgentSpan span, final CharSequence statement) { span.setResourceName(normalizedQuery(statement)); - return span; } - public AgentSpan onResponse(final AgentSpan span, final ResultSet result) { + public void onResponse(final AgentSpan span, final ResultSet result) { if (result != null) { final Host host = result.getExecutionInfo().getQueriedHost(); onPeerConnection(span, host.getSocketAddress()); @@ -100,6 +99,5 @@ public AgentSpan onResponse(final AgentSpan span, final ResultSet result) { } catch (final Throwable ignored) { } } - return span; } } diff --git a/dd-java-agent/instrumentation/datastax-cassandra/datastax-cassandra-4.0/src/main/java/datadog/trace/instrumentation/datastax/cassandra4/CassandraClientDecorator.java b/dd-java-agent/instrumentation/datastax-cassandra/datastax-cassandra-4.0/src/main/java/datadog/trace/instrumentation/datastax/cassandra4/CassandraClientDecorator.java index 73badd7fbd2..22688bca2ba 100644 --- a/dd-java-agent/instrumentation/datastax-cassandra/datastax-cassandra-4.0/src/main/java/datadog/trace/instrumentation/datastax/cassandra4/CassandraClientDecorator.java +++ b/dd-java-agent/instrumentation/datastax-cassandra/datastax-cassandra-4.0/src/main/java/datadog/trace/instrumentation/datastax/cassandra4/CassandraClientDecorator.java @@ -82,41 +82,32 @@ protected String dbHostname(Session session) { return null; } - public AgentSpan onStatement(final AgentSpan span, final CharSequence statement) { + public void onStatement(final AgentSpan span, final CharSequence statement) { span.setResourceName(normalizedQuery(statement)); - return span; } - public AgentSpan onResponse(final AgentSpan span, final ResultSet result) { + public void onResponse(final AgentSpan span, final ResultSet result) { if (result != null) { - return onResponse( - span, result.getExecutionInfo().getCoordinator(), result.getColumnDefinitions()); + onResponse(span, result.getExecutionInfo().getCoordinator(), result.getColumnDefinitions()); } - - return span; } - public AgentSpan onResponse(final AgentSpan span, final AsyncResultSet result) { + public void onResponse(final AgentSpan span, final AsyncResultSet result) { if (result != null) { - return onResponse( - span, result.getExecutionInfo().getCoordinator(), result.getColumnDefinitions()); + onResponse(span, result.getExecutionInfo().getCoordinator(), result.getColumnDefinitions()); } - - return span; } @Override - public AgentSpan onError(final AgentSpan span, final Throwable throwable) { + public void onError(final AgentSpan span, final Throwable throwable) { super.onError(span, throwable); if (throwable instanceof CoordinatorException) { onResponse(span, ((CoordinatorException) throwable).getCoordinator(), null); } - - return span; } - private AgentSpan onResponse(AgentSpan span, Node coordinator, ColumnDefinitions columns) { + private void onResponse(AgentSpan span, Node coordinator, ColumnDefinitions columns) { if (coordinator != null) { SocketAddress address = coordinator.getEndPoint().resolve(); if (address instanceof InetSocketAddress) { @@ -134,6 +125,5 @@ private AgentSpan onResponse(AgentSpan span, Node coordinator, ColumnDefinitions } } catch (final Throwable ignored) { } - return span; } } diff --git a/dd-java-agent/instrumentation/elasticsearch/elasticsearch-common/src/main/java/datadog/trace/instrumentation/elasticsearch/ElasticsearchRestClientDecorator.java b/dd-java-agent/instrumentation/elasticsearch/elasticsearch-common/src/main/java/datadog/trace/instrumentation/elasticsearch/ElasticsearchRestClientDecorator.java index 0741e14a39e..951967e2ec4 100644 --- a/dd-java-agent/instrumentation/elasticsearch/elasticsearch-common/src/main/java/datadog/trace/instrumentation/elasticsearch/ElasticsearchRestClientDecorator.java +++ b/dd-java-agent/instrumentation/elasticsearch/elasticsearch-common/src/main/java/datadog/trace/instrumentation/elasticsearch/ElasticsearchRestClientDecorator.java @@ -86,7 +86,7 @@ private String getElasticsearchRequestBody(HttpEntity entity) { } } - public AgentSpan onRequest( + public void onRequest( final AgentSpan span, final String method, final String endpoint, @@ -126,14 +126,13 @@ public AgentSpan onRequest( span.setTag("elasticsearch.params", queryParametersStringBuilder.toString()); } } - return HTTP_RESOURCE_DECORATOR.withClientPath(span, method, endpoint); + HTTP_RESOURCE_DECORATOR.withClientPath(span, method, endpoint); } - public AgentSpan onResponse(final AgentSpan span, final Response response) { + public void onResponse(final AgentSpan span, final Response response) { if (response != null && response.getHost() != null) { span.setTag(Tags.PEER_HOSTNAME, response.getHost().getHostName()); setPeerPort(span, response.getHost().getPort()); } - return span; } } diff --git a/dd-java-agent/instrumentation/elasticsearch/elasticsearch-common/src/main/java/datadog/trace/instrumentation/elasticsearch/ElasticsearchTransportClientDecorator.java b/dd-java-agent/instrumentation/elasticsearch/elasticsearch-common/src/main/java/datadog/trace/instrumentation/elasticsearch/ElasticsearchTransportClientDecorator.java index 172a7a56ef8..1973e2b15d5 100644 --- a/dd-java-agent/instrumentation/elasticsearch/elasticsearch-common/src/main/java/datadog/trace/instrumentation/elasticsearch/ElasticsearchTransportClientDecorator.java +++ b/dd-java-agent/instrumentation/elasticsearch/elasticsearch-common/src/main/java/datadog/trace/instrumentation/elasticsearch/ElasticsearchTransportClientDecorator.java @@ -60,7 +60,7 @@ protected String dbHostname(Object o) { return null; } - public AgentSpan onRequest(final AgentSpan span, final Class action, final Class request) { + public void onRequest(final AgentSpan span, final Class action, final Class request) { if (action != null) { String actionName = action.getSimpleName(); // ES 7.9 internally changes PutMappingAction to AutoPutMappingAction for @@ -74,6 +74,5 @@ public AgentSpan onRequest(final AgentSpan span, final Class action, final Class if (request != null) { span.setTag("elasticsearch.request", request.getSimpleName()); } - return span; } } diff --git a/dd-java-agent/instrumentation/google-http-client-1.19/src/main/java/datadog/trace/instrumentation/googlehttpclient/GoogleHttpClientDecorator.java b/dd-java-agent/instrumentation/google-http-client-1.19/src/main/java/datadog/trace/instrumentation/googlehttpclient/GoogleHttpClientDecorator.java index 6204dfda7ae..f1d41a0d97c 100644 --- a/dd-java-agent/instrumentation/google-http-client-1.19/src/main/java/datadog/trace/instrumentation/googlehttpclient/GoogleHttpClientDecorator.java +++ b/dd-java-agent/instrumentation/google-http-client-1.19/src/main/java/datadog/trace/instrumentation/googlehttpclient/GoogleHttpClientDecorator.java @@ -31,10 +31,9 @@ protected URI url(final HttpRequest httpRequest) throws URISyntaxException { return URIUtils.safeParse(fixedUrl); } - public AgentSpan prepareSpan(AgentSpan span, HttpRequest request) { + public void prepareSpan(AgentSpan span, HttpRequest request) { DECORATE.afterStart(span); DECORATE.onRequest(span, request); - return span; } @Override diff --git a/dd-java-agent/instrumentation/google-http-client-1.19/src/main/java/datadog/trace/instrumentation/googlehttpclient/GoogleHttpClientInstrumentation.java b/dd-java-agent/instrumentation/google-http-client-1.19/src/main/java/datadog/trace/instrumentation/googlehttpclient/GoogleHttpClientInstrumentation.java index cdb871237f6..db09032a5b4 100644 --- a/dd-java-agent/instrumentation/google-http-client-1.19/src/main/java/datadog/trace/instrumentation/googlehttpclient/GoogleHttpClientInstrumentation.java +++ b/dd-java-agent/instrumentation/google-http-client-1.19/src/main/java/datadog/trace/instrumentation/googlehttpclient/GoogleHttpClientInstrumentation.java @@ -80,8 +80,9 @@ public static AgentScope methodEnter( return null; } } - return activateSpan( - DECORATE.prepareSpan(startSpan("google-http-client", HTTP_REQUEST), request)); + AgentSpan span = startSpan("google-http-client", HTTP_REQUEST); + DECORATE.prepareSpan(span, request); + return activateSpan(span); } @Advice.OnMethodExit(onThrowable = Throwable.class, suppress = Throwable.class) @@ -109,8 +110,9 @@ public static class GoogleHttpClientAsyncAdvice { @Advice.OnMethodEnter(suppress = Throwable.class) public static AgentScope methodEnter(@Advice.This HttpRequest request) { - return activateSpan( - DECORATE.prepareSpan(startSpan("google-http-client", HTTP_REQUEST), request)); + AgentSpan span = startSpan("google-http-client", HTTP_REQUEST); + DECORATE.prepareSpan(span, request); + return activateSpan(span); } @Advice.OnMethodExit(onThrowable = Throwable.class, suppress = Throwable.class) diff --git a/dd-java-agent/instrumentation/google-pubsub-1.116/src/main/java/datadog/trace/instrumentation/googlepubsub/MessageReceiverWithAckResponseWrapper.java b/dd-java-agent/instrumentation/google-pubsub-1.116/src/main/java/datadog/trace/instrumentation/googlepubsub/MessageReceiverWithAckResponseWrapper.java index 724ae18d775..e85354c537c 100644 --- a/dd-java-agent/instrumentation/google-pubsub-1.116/src/main/java/datadog/trace/instrumentation/googlepubsub/MessageReceiverWithAckResponseWrapper.java +++ b/dd-java-agent/instrumentation/google-pubsub-1.116/src/main/java/datadog/trace/instrumentation/googlepubsub/MessageReceiverWithAckResponseWrapper.java @@ -21,7 +21,7 @@ public MessageReceiverWithAckResponseWrapper( @Override public void receiveMessage(PubsubMessage message, AckReplyConsumerWithResponse consumer) { - final AgentSpan span = CONSUMER_DECORATE.onConsume(message, subscription); + final AgentSpan span = CONSUMER_DECORATE.startConsumeSpan(message, subscription); try (final ContextScope scope = activateSpan(span)) { this.delegate.receiveMessage(message, consumer); } finally { diff --git a/dd-java-agent/instrumentation/google-pubsub-1.116/src/main/java/datadog/trace/instrumentation/googlepubsub/MessageReceiverWrapper.java b/dd-java-agent/instrumentation/google-pubsub-1.116/src/main/java/datadog/trace/instrumentation/googlepubsub/MessageReceiverWrapper.java index 9199d40141f..59ffc1d928e 100644 --- a/dd-java-agent/instrumentation/google-pubsub-1.116/src/main/java/datadog/trace/instrumentation/googlepubsub/MessageReceiverWrapper.java +++ b/dd-java-agent/instrumentation/google-pubsub-1.116/src/main/java/datadog/trace/instrumentation/googlepubsub/MessageReceiverWrapper.java @@ -20,7 +20,7 @@ public MessageReceiverWrapper(String subscription, MessageReceiver delegate) { @Override public void receiveMessage(PubsubMessage message, AckReplyConsumer consumer) { - final AgentSpan span = CONSUMER_DECORATE.onConsume(message, subscription); + final AgentSpan span = CONSUMER_DECORATE.startConsumeSpan(message, subscription); try (final ContextScope scope = activateSpan(span)) { this.delegate.receiveMessage(message, consumer); } finally { diff --git a/dd-java-agent/instrumentation/google-pubsub-1.116/src/main/java/datadog/trace/instrumentation/googlepubsub/PubSubDecorator.java b/dd-java-agent/instrumentation/google-pubsub-1.116/src/main/java/datadog/trace/instrumentation/googlepubsub/PubSubDecorator.java index b4b012fc4db..57c5b13a807 100644 --- a/dd-java-agent/instrumentation/google-pubsub-1.116/src/main/java/datadog/trace/instrumentation/googlepubsub/PubSubDecorator.java +++ b/dd-java-agent/instrumentation/google-pubsub-1.116/src/main/java/datadog/trace/instrumentation/googlepubsub/PubSubDecorator.java @@ -121,7 +121,7 @@ protected String spanKind() { return spanKind; } - public AgentSpan onConsume(final PubsubMessage message, final String subscription) { + public AgentSpan startConsumeSpan(final PubsubMessage message, final String subscription) { final AgentSpanContext spanContext = extractContextAndGetSpanContext(message, TextMapExtractAdapter.GETTER); final AgentSpan span = startSpan(JAVA_PUBSUB.toString(), PUBSUB_CONSUME, spanContext); diff --git a/dd-java-agent/instrumentation/graphql-java/graphql-java-common/src/main/java/datadog/trace/instrumentation/graphqljava/GraphQLDecorator.java b/dd-java-agent/instrumentation/graphql-java/graphql-java-common/src/main/java/datadog/trace/instrumentation/graphqljava/GraphQLDecorator.java index 7981de23037..a61306846fb 100644 --- a/dd-java-agent/instrumentation/graphql-java/graphql-java-common/src/main/java/datadog/trace/instrumentation/graphqljava/GraphQLDecorator.java +++ b/dd-java-agent/instrumentation/graphql-java/graphql-java-common/src/main/java/datadog/trace/instrumentation/graphqljava/GraphQLDecorator.java @@ -54,12 +54,12 @@ protected CharSequence component() { } @Override - public AgentSpan afterStart(final AgentSpan span) { + public void afterStart(final AgentSpan span) { span.setMeasured(true); - return super.afterStart(span); + super.afterStart(span); } - public AgentSpan onRequest(final AgentSpan span, final ExecutionContext context) { + public void onRequest(final AgentSpan span, final ExecutionContext context) { if (ActiveSubsystems.APPSEC_ACTIVE) { @@ -88,13 +88,13 @@ public AgentSpan onRequest(final AgentSpan span, final ExecutionContext context) CallbackProvider cbp = tracer().getCallbackProvider(RequestContextSlot.APPSEC); RequestContext ctx = span.getRequestContext(); if (cbp == null || resolversArgs.isEmpty() || ctx == null) { - return null; + return; } BiFunction, Flow> graphqlResolverCallback = cbp.getCallback(EVENTS.graphqlServerRequestMessage()); if (graphqlResolverCallback == null) { - return null; + return; } Flow flow = graphqlResolverCallback.apply(ctx, resolversArgs); @@ -103,7 +103,5 @@ public AgentSpan onRequest(final AgentSpan span, final ExecutionContext context) // span.setRequestBlockingAction((Flow.Action.RequestBlockingAction) flow.getAction()); } } - - return span; } } diff --git a/dd-java-agent/instrumentation/grpc-1.5/src/main/java/datadog/trace/instrumentation/grpc/client/GrpcClientDecorator.java b/dd-java-agent/instrumentation/grpc-1.5/src/main/java/datadog/trace/instrumentation/grpc/client/GrpcClientDecorator.java index 94ca56566f9..bcf6a5461b5 100644 --- a/dd-java-agent/instrumentation/grpc-1.5/src/main/java/datadog/trace/instrumentation/grpc/client/GrpcClientDecorator.java +++ b/dd-java-agent/instrumentation/grpc-1.5/src/main/java/datadog/trace/instrumentation/grpc/client/GrpcClientDecorator.java @@ -107,7 +107,8 @@ public AgentSpan startCall(MethodDescriptor method) { RPC_SERVICE_CACHE.computeIfAbsent( method.getFullMethodName(), MethodDescriptor::extractFullServiceName)); span.setResourceName(method.getFullMethodName()); - return afterStart(span); + afterStart(span); + return span; } public void injectContext(Context context, final C request, CarrierSetter setter) { @@ -117,7 +118,7 @@ public void injectContext(Context context, final C request, CarrierSetter defaultPropagator().inject(context, request, setter); } - public AgentSpan onClose(final AgentSpan span, final Status status) { + public void onClose(final AgentSpan span, final Status status) { span.setTag("status.code", status.getCode().name()); span.setTag("grpc.status.code", status.getCode().name()); span.setTag(InstrumentationTags.GRPC_STATUS_CODE, status.getCode().value()); @@ -126,6 +127,5 @@ public AgentSpan onClose(final AgentSpan span, final Status status) { // TODO why is there a mismatch between client / server for calling the onError method? onError(span, status.getCause()); span.setError(CLIENT_ERROR_STATUSES.get(status.getCode().value())); - return span; } } diff --git a/dd-java-agent/instrumentation/grpc-1.5/src/main/java/datadog/trace/instrumentation/grpc/server/GrpcServerDecorator.java b/dd-java-agent/instrumentation/grpc-1.5/src/main/java/datadog/trace/instrumentation/grpc/server/GrpcServerDecorator.java index 263a1feb3d0..249d003a5df 100644 --- a/dd-java-agent/instrumentation/grpc-1.5/src/main/java/datadog/trace/instrumentation/grpc/server/GrpcServerDecorator.java +++ b/dd-java-agent/instrumentation/grpc-1.5/src/main/java/datadog/trace/instrumentation/grpc/server/GrpcServerDecorator.java @@ -80,12 +80,12 @@ protected CharSequence component() { } @Override - public AgentSpan afterStart(final AgentSpan span) { + public void afterStart(final AgentSpan span) { span.setMeasured(true); - return super.afterStart(span); + super.afterStart(span); } - public AgentSpan onCall(final AgentSpan span, ServerCall call) { + public void onCall(final AgentSpan span, ServerCall call) { if (TRIM_RESOURCE_PACKAGE_NAME) { span.setResourceName( cachedResourceNames.computeIfAbsent( @@ -93,33 +93,31 @@ public AgentSpan onCall(final AgentSpan span, ServerCall 0) { span.setTag(HAZELCAST_CORRELATION_ID, correlationId); } - - return span; } - public AgentSpan onHazelcastInstance(final AgentSpan span, String instanceName) { + public void onHazelcastInstance(final AgentSpan span, String instanceName) { span.setTag(HAZELCAST_INSTANCE, instanceName); - return span; - } - - /** Annotate the span with the results of the operation. */ - public AgentSpan onResult(final AgentSpan span, Object result) { - return span; } } diff --git a/dd-java-agent/instrumentation/hazelcast/hazelcast-3.9/src/main/java/datadog/trace/instrumentation/hazelcast39/SpanFinishingExecutionCallback.java b/dd-java-agent/instrumentation/hazelcast/hazelcast-3.9/src/main/java/datadog/trace/instrumentation/hazelcast39/SpanFinishingExecutionCallback.java index 2880a47c91f..6d5547f9c38 100644 --- a/dd-java-agent/instrumentation/hazelcast/hazelcast-3.9/src/main/java/datadog/trace/instrumentation/hazelcast39/SpanFinishingExecutionCallback.java +++ b/dd-java-agent/instrumentation/hazelcast/hazelcast-3.9/src/main/java/datadog/trace/instrumentation/hazelcast39/SpanFinishingExecutionCallback.java @@ -17,7 +17,6 @@ public SpanFinishingExecutionCallback(final AgentSpan span) { @Override public void onResponse(V response) { DECORATE.beforeFinish(span); - DECORATE.onResult(span, response); span.finish(); } diff --git a/dd-java-agent/instrumentation/hazelcast/hazelcast-4.0/src/main/java/datadog/trace/instrumentation/hazelcast4/HazelcastDecorator.java b/dd-java-agent/instrumentation/hazelcast/hazelcast-4.0/src/main/java/datadog/trace/instrumentation/hazelcast4/HazelcastDecorator.java index 42448833c74..86dfab1731a 100644 --- a/dd-java-agent/instrumentation/hazelcast/hazelcast-4.0/src/main/java/datadog/trace/instrumentation/hazelcast4/HazelcastDecorator.java +++ b/dd-java-agent/instrumentation/hazelcast/hazelcast-4.0/src/main/java/datadog/trace/instrumentation/hazelcast4/HazelcastDecorator.java @@ -42,7 +42,7 @@ protected String service() { } /** Decorate trace based on service execution metadata. */ - public AgentSpan onServiceExecution( + public void onServiceExecution( final AgentSpan span, final String operationName, final Object objectName, @@ -62,7 +62,5 @@ public AgentSpan onServiceExecution( if (correlationId > 0) { span.setTag(HAZELCAST_CORRELATION_ID, correlationId); } - - return span; } } diff --git a/dd-java-agent/instrumentation/ignite-2.0/src/main/java/datadog/trace/instrumentation/ignite/v2/cache/IgniteCacheDecorator.java b/dd-java-agent/instrumentation/ignite-2.0/src/main/java/datadog/trace/instrumentation/ignite/v2/cache/IgniteCacheDecorator.java index ef372f24a06..7cd46a731e2 100644 --- a/dd-java-agent/instrumentation/ignite-2.0/src/main/java/datadog/trace/instrumentation/ignite/v2/cache/IgniteCacheDecorator.java +++ b/dd-java-agent/instrumentation/ignite-2.0/src/main/java/datadog/trace/instrumentation/ignite/v2/cache/IgniteCacheDecorator.java @@ -71,12 +71,11 @@ protected CharSequence dbHostname(IgniteCache igniteCache) { return null; } - public AgentSpan onOperation( - final AgentSpan span, final String cacheName, final String methodName) { - return onOperation(span, cacheName, methodName, null); + public void onOperation(final AgentSpan span, final String cacheName, final String methodName) { + onOperation(span, cacheName, methodName, null); } - public AgentSpan onQuery( + public void onQuery( final AgentSpan span, final String cacheName, final String methodName, final Query query) { if (methodName != null) { span.setTag("ignite.operation", "cache." + methodName); @@ -112,11 +111,9 @@ public AgentSpan onQuery( resourceName.append(cacheName); span.setResourceName(resourceName); } - - return span; } - public AgentSpan onOperation( + public void onOperation( final AgentSpan span, final String cacheName, final String methodName, Object key) { final StringBuilder resourceName = new StringBuilder("cache."); @@ -139,25 +136,17 @@ public AgentSpan onOperation( if (includeKeys && key != null) { span.setTag("ignite.cache.key", key.toString()); } - - return span; } - public AgentSpan onIgnite(final AgentSpan span, final Ignite ignite) { + public void onIgnite(final AgentSpan span, final Ignite ignite) { if (ignite == null) { - return span; + return; } if (ignite.name() != null) { span.setTag("ignite.instance", ignite.name()); } span.setTag("ignite.version", ignite.version().toString()); - - return span; - } - - public AgentSpan onResult(AgentSpan span, Object result) { - return span; } } diff --git a/dd-java-agent/instrumentation/ignite-2.0/src/main/java/datadog/trace/instrumentation/ignite/v2/cache/SpanFinishingCallback.java b/dd-java-agent/instrumentation/ignite-2.0/src/main/java/datadog/trace/instrumentation/ignite/v2/cache/SpanFinishingCallback.java index a25c2f658f7..a73fb066cc7 100644 --- a/dd-java-agent/instrumentation/ignite-2.0/src/main/java/datadog/trace/instrumentation/ignite/v2/cache/SpanFinishingCallback.java +++ b/dd-java-agent/instrumentation/ignite-2.0/src/main/java/datadog/trace/instrumentation/ignite/v2/cache/SpanFinishingCallback.java @@ -22,9 +22,8 @@ public void apply(IgniteFuture igniteFuture) { IgniteCacheDecorator.DECORATE.beforeFinish(span); try { - Object result = igniteFuture.get(); + igniteFuture.get(); // propagates failure to the catch block below IgniteCacheDecorator.DECORATE.beforeFinish(span); - IgniteCacheDecorator.DECORATE.onResult(span, result); } catch (Exception e) { IgniteCacheDecorator.DECORATE.onError(span, e); } finally { diff --git a/dd-java-agent/instrumentation/jdbc/src/main/java/datadog/trace/instrumentation/jdbc/JDBCDecorator.java b/dd-java-agent/instrumentation/jdbc/src/main/java/datadog/trace/instrumentation/jdbc/JDBCDecorator.java index f0d397b89ed..7914ef8d89c 100644 --- a/dd-java-agent/instrumentation/jdbc/src/main/java/datadog/trace/instrumentation/jdbc/JDBCDecorator.java +++ b/dd-java-agent/instrumentation/jdbc/src/main/java/datadog/trace/instrumentation/jdbc/JDBCDecorator.java @@ -153,7 +153,7 @@ private void setTagIfPresent(final AgentSpan span, final String key, final Strin } } - public AgentSpan onConnection(final AgentSpan span, DBInfo dbInfo) { + public void onConnection(final AgentSpan span, DBInfo dbInfo) { if (dbInfo != null) { processDatabaseType(span, dbInfo.getType()); @@ -161,7 +161,7 @@ public AgentSpan onConnection(final AgentSpan span, DBInfo dbInfo) { setTagIfPresent(span, DB_SCHEMA, dbInfo.getSchema()); setTagIfPresent(span, DB_POOL_NAME, dbInfo.getPoolName()); } - return super.onConnection(span, dbInfo); + super.onConnection(span, dbInfo); } public static DBInfo parseDBInfo( @@ -249,14 +249,14 @@ public static DBInfo parseDBInfoFromConnection(final Connection connection) { return dbInfo; } - public AgentSpan onStatement(AgentSpan span, final String statement) { + public void onStatement(AgentSpan span, final String statement) { onRawStatement(span, statement); DBQueryInfo dbQueryInfo = DBQueryInfo.ofStatement(statement); - return withQueryInfo(span, dbQueryInfo, JDBC_STATEMENT); + withQueryInfo(span, dbQueryInfo, JDBC_STATEMENT); } - public AgentSpan onPreparedStatement(AgentSpan span, DBQueryInfo dbQueryInfo) { - return withQueryInfo(span, dbQueryInfo, JDBC_PREPARED_STATEMENT); + public void onPreparedStatement(AgentSpan span, DBQueryInfo dbQueryInfo) { + withQueryInfo(span, dbQueryInfo, JDBC_PREPARED_STATEMENT); } /** @@ -269,7 +269,7 @@ public void withBaseHash(AgentSpan span) { } } - private AgentSpan withQueryInfo(AgentSpan span, DBQueryInfo info, CharSequence component) { + private void withQueryInfo(AgentSpan span, DBQueryInfo info, CharSequence component) { if (null != info) { span.setResourceName(info.getSql()); span.setTag(DB_OPERATION, info.getOperation()); @@ -277,7 +277,7 @@ private AgentSpan withQueryInfo(AgentSpan span, DBQueryInfo info, CharSequence c span.setResourceName(DB_QUERY); } span.spanContext().setIntegrationName(component); - return span.setTag(Tags.COMPONENT, component); + span.setTag(Tags.COMPONENT, component); } public boolean isOracle(final DBInfo dbInfo) { diff --git a/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-10.0/src/main/java11/datadog/trace/instrumentation/jetty10/JettyDecorator.java b/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-10.0/src/main/java11/datadog/trace/instrumentation/jetty10/JettyDecorator.java index d7a2591cd87..2caf9cf2754 100644 --- a/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-10.0/src/main/java11/datadog/trace/instrumentation/jetty10/JettyDecorator.java +++ b/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-10.0/src/main/java11/datadog/trace/instrumentation/jetty10/JettyDecorator.java @@ -108,7 +108,7 @@ protected BlockResponseFunction createBlockResponseFunction(Request request, Req } public static final class OnResponse { - public static AgentSpan onResponse(AgentSpan span, HttpChannel channel) { + public static void onResponse(AgentSpan span, HttpChannel channel) { Request request = channel.getRequest(); Response response = channel.getResponse(); if (Config.get().isServletPrincipalEnabled() && request.getUserPrincipal() != null) { @@ -122,7 +122,7 @@ public static AgentSpan onResponse(AgentSpan span, HttpChannel channel) { } JettyDecorator.DECORATE.onError(span, throwable); } - return DECORATE.onResponse(span, response); + DECORATE.onResponse(span, response); } } } diff --git a/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-11.0/src/main/java11/datadog/trace/instrumentation/jetty11/JettyDecorator.java b/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-11.0/src/main/java11/datadog/trace/instrumentation/jetty11/JettyDecorator.java index a3746ca60a4..0003f085225 100644 --- a/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-11.0/src/main/java11/datadog/trace/instrumentation/jetty11/JettyDecorator.java +++ b/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-11.0/src/main/java11/datadog/trace/instrumentation/jetty11/JettyDecorator.java @@ -102,7 +102,7 @@ protected String getRequestHeader(final Request request, String key) { return request.getHeader(key); } - public AgentSpan onResponse(AgentSpan span, HttpChannel channel) { + public void onResponse(AgentSpan span, HttpChannel channel) { Request request = channel.getRequest(); Response response = channel.getResponse(); if (Config.get().isServletPrincipalEnabled() && request.getUserPrincipal() != null) { @@ -116,7 +116,7 @@ public AgentSpan onResponse(AgentSpan span, HttpChannel channel) { } onError(span, throwable); } - return super.onResponse(span, response); + super.onResponse(span, response); } @Override diff --git a/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-12.0/src/main/java17/datadog/trace/instrumentation/jetty12/JettyDecorator.java b/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-12.0/src/main/java17/datadog/trace/instrumentation/jetty12/JettyDecorator.java index d11fbe87cdf..bfa8d3bb1dd 100644 --- a/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-12.0/src/main/java17/datadog/trace/instrumentation/jetty12/JettyDecorator.java +++ b/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-12.0/src/main/java17/datadog/trace/instrumentation/jetty12/JettyDecorator.java @@ -131,7 +131,7 @@ protected String getRequestHeader(final Request request, String key) { return request.getHeaders().get(key); } - public AgentSpan onResponse(AgentSpan span, HttpChannelState channel) { + public void onResponse(AgentSpan span, HttpChannelState channel) { Request request = channel.getRequest(); Response response = channel.getResponse(); if (Config.get().isServletPrincipalEnabled()) { @@ -155,6 +155,6 @@ public AgentSpan onResponse(AgentSpan span, HttpChannelState channel) { } onError(span, throwable); } - return super.onResponse(span, response); + super.onResponse(span, response); } } diff --git a/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-7.0/src/main/java/datadog/trace/instrumentation/jetty70/JettyDecorator.java b/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-7.0/src/main/java/datadog/trace/instrumentation/jetty70/JettyDecorator.java index 21a55f52535..14cd00c493d 100644 --- a/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-7.0/src/main/java/datadog/trace/instrumentation/jetty70/JettyDecorator.java +++ b/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-7.0/src/main/java/datadog/trace/instrumentation/jetty70/JettyDecorator.java @@ -104,7 +104,7 @@ protected String getRequestHeader(final Request request, String key) { return request.getHeader(key); } - public AgentSpan onResponse(AgentSpan span, HttpConnection channel) { + public void onResponse(AgentSpan span, HttpConnection channel) { Request request = channel.getRequest(); Response response = channel.getResponse(); if (Config.get().isServletPrincipalEnabled() && request.getUserPrincipal() != null) { @@ -118,7 +118,7 @@ public AgentSpan onResponse(AgentSpan span, HttpConnection channel) { } onError(span, throwable); } - return super.onResponse(span, response); + super.onResponse(span, response); } @Override diff --git a/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-7.6/src/main/java/datadog/trace/instrumentation/jetty76/JettyDecorator.java b/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-7.6/src/main/java/datadog/trace/instrumentation/jetty76/JettyDecorator.java index e5d7d184953..26817ff246e 100644 --- a/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-7.6/src/main/java/datadog/trace/instrumentation/jetty76/JettyDecorator.java +++ b/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-7.6/src/main/java/datadog/trace/instrumentation/jetty76/JettyDecorator.java @@ -104,7 +104,7 @@ protected String getRequestHeader(final Request request, String key) { return request.getHeader(key); } - public AgentSpan onResponse(AgentSpan span, AbstractHttpConnection connection) { + public void onResponse(AgentSpan span, AbstractHttpConnection connection) { Request request = connection.getRequest(); Response response = connection.getResponse(); if (Config.get().isServletPrincipalEnabled() && request.getUserPrincipal() != null) { @@ -118,7 +118,7 @@ public AgentSpan onResponse(AgentSpan span, AbstractHttpConnection connection) { } onError(span, throwable); } - return super.onResponse(span, response); + super.onResponse(span, response); } @Override diff --git a/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-9.0/src/main/java/datadog/trace/instrumentation/jetty9/JettyDecorator.java b/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-9.0/src/main/java/datadog/trace/instrumentation/jetty9/JettyDecorator.java index 3e73bc914be..ca99c88fead 100644 --- a/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-9.0/src/main/java/datadog/trace/instrumentation/jetty9/JettyDecorator.java +++ b/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-9.0/src/main/java/datadog/trace/instrumentation/jetty9/JettyDecorator.java @@ -101,7 +101,7 @@ protected String getRequestHeader(final Request request, String key) { return request.getHeader(key); } - public AgentSpan onResponse(AgentSpan span, HttpChannel channel) { + public void onResponse(AgentSpan span, HttpChannel channel) { Request request = channel.getRequest(); Response response = channel.getResponse(); if (Config.get().isServletPrincipalEnabled() && request.getUserPrincipal() != null) { @@ -115,7 +115,7 @@ public AgentSpan onResponse(AgentSpan span, HttpChannel channel) { } onError(span, throwable); } - return super.onResponse(span, response); + super.onResponse(span, response); } @Override diff --git a/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-9.0/src/main/java/datadog/trace/instrumentation/jetty9/WebSocketSessionInstrumentation.java b/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-9.0/src/main/java/datadog/trace/instrumentation/jetty9/WebSocketSessionInstrumentation.java index 9057949dc62..8ce09ae6cf7 100644 --- a/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-9.0/src/main/java/datadog/trace/instrumentation/jetty9/WebSocketSessionInstrumentation.java +++ b/dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-9.0/src/main/java/datadog/trace/instrumentation/jetty9/WebSocketSessionInstrumentation.java @@ -76,7 +76,7 @@ public static AgentScope before( if (handlerContext == null) { return null; } - return activateSpan(DECORATE.onSessionCloseIssued(handlerContext, null, 1000)); + return activateSpan(DECORATE.startOutboundCloseSpan(handlerContext, null, 1000)); } @Advice.OnMethodExit(suppress = Throwable.class, onThrowable = Throwable.class) diff --git a/dd-java-agent/instrumentation/lettuce/lettuce-4.0/src/main/java/datadog/trace/instrumentation/lettuce4/LettuceClientDecorator.java b/dd-java-agent/instrumentation/lettuce/lettuce-4.0/src/main/java/datadog/trace/instrumentation/lettuce4/LettuceClientDecorator.java index 31b8c2e67e2..f05371cdab8 100644 --- a/dd-java-agent/instrumentation/lettuce/lettuce-4.0/src/main/java/datadog/trace/instrumentation/lettuce4/LettuceClientDecorator.java +++ b/dd-java-agent/instrumentation/lettuce/lettuce-4.0/src/main/java/datadog/trace/instrumentation/lettuce4/LettuceClientDecorator.java @@ -61,18 +61,17 @@ protected String dbHostname(RedisURI redisURI) { } @Override - public AgentSpan onConnection(final AgentSpan span, final RedisURI connection) { + public void onConnection(final AgentSpan span, final RedisURI connection) { if (connection != null) { setPeerPort(span, connection.getPort()); span.setTag("db.redis.dbIndex", connection.getDatabase()); } - return super.onConnection(span, connection); + super.onConnection(span, connection); } - public AgentSpan onCommand(final AgentSpan span, final RedisCommand command) { + public void onCommand(final AgentSpan span, final RedisCommand command) { span.setResourceName( null == command ? "Redis Command" : getCommandResourceName(command.getType())); - return span; } public String resourceNameForConnection(final RedisURI redisURI) { diff --git a/dd-java-agent/instrumentation/lettuce/lettuce-5.0/src/main/java/datadog/trace/instrumentation/lettuce5/LettuceClientDecorator.java b/dd-java-agent/instrumentation/lettuce/lettuce-5.0/src/main/java/datadog/trace/instrumentation/lettuce5/LettuceClientDecorator.java index a8442a1f320..e6a03dbc242 100644 --- a/dd-java-agent/instrumentation/lettuce/lettuce-5.0/src/main/java/datadog/trace/instrumentation/lettuce5/LettuceClientDecorator.java +++ b/dd-java-agent/instrumentation/lettuce/lettuce-5.0/src/main/java/datadog/trace/instrumentation/lettuce5/LettuceClientDecorator.java @@ -57,19 +57,18 @@ protected String dbHostname(RedisURI redisURI) { } @Override - public AgentSpan onConnection(final AgentSpan span, final RedisURI connection) { + public void onConnection(final AgentSpan span, final RedisURI connection) { if (connection != null) { setPeerPort(span, connection.getPort()); span.setTag("db.redis.dbIndex", connection.getDatabase()); } - return super.onConnection(span, connection); + super.onConnection(span, connection); } - public AgentSpan onCommand(final AgentSpan span, final RedisCommand command) { + public void onCommand(final AgentSpan span, final RedisCommand command) { final String commandName = LettuceInstrumentationUtil.getCommandName(command); span.setResourceName(LettuceInstrumentationUtil.getCommandResourceName(commandName)); - return span; } public String resourceNameForConnection(final RedisURI redisURI) { diff --git a/dd-java-agent/instrumentation/liberty/liberty-20.0/src/main/java/datadog/trace/instrumentation/liberty20/LibertyDecorator.java b/dd-java-agent/instrumentation/liberty/liberty-20.0/src/main/java/datadog/trace/instrumentation/liberty20/LibertyDecorator.java index e3b34ef74c4..e325f102bc6 100644 --- a/dd-java-agent/instrumentation/liberty/liberty-20.0/src/main/java/datadog/trace/instrumentation/liberty20/LibertyDecorator.java +++ b/dd-java-agent/instrumentation/liberty/liberty-20.0/src/main/java/datadog/trace/instrumentation/liberty20/LibertyDecorator.java @@ -94,7 +94,7 @@ protected String requestedSessionId(final HttpServletRequest request) { } @Override - public AgentSpan onResponseStatus(AgentSpan span, int status) { + public void onResponseStatus(AgentSpan span, int status) { Integer currentStatus = (Integer) span.getTag(Tags.HTTP_STATUS); // do not set status if the tag is already there and it's an error span // we may have the status during response blocking, but in that case @@ -102,10 +102,9 @@ public AgentSpan onResponseStatus(AgentSpan span, int status) { if (currentStatus == null || !span.isError()) { super.onResponseStatus(span, status); } - return span; } - public AgentSpan getPath(AgentSpan span, HttpServletRequest request) { + public void getPath(AgentSpan span, HttpServletRequest request) { if (request != null) { String contextPath = request.getContextPath(); String servletPath = request.getServletPath(); @@ -120,7 +119,6 @@ public AgentSpan getPath(AgentSpan span, HttpServletRequest request) { request.setAttribute(DD_CONTEXT_PATH_ATTRIBUTE, contextPath); request.setAttribute(DD_SERVLET_PATH_ATTRIBUTE, servletPath); } - return span; } @Override @@ -128,7 +126,7 @@ protected boolean isAppSecOnResponseSeparate() { return true; } - public AgentSpan onResponse(AgentSpan span, SRTServletResponse response) { + public void onResponse(AgentSpan span, SRTServletResponse response) { HttpServletRequest req = response.getRequest(); if (Config.get().isServletPrincipalEnabled() && req.getUserPrincipal() != null) { @@ -154,10 +152,9 @@ public AgentSpan onResponse(AgentSpan span, SRTServletResponse response) { span.setError(true); span.setTag(DDTags.ERROR_MSG, (String) errorMessage); } - return span; } - public AgentSpan onError(AgentSpan span, WebAppErrorReport report, Throwable servletThrowable) { + public void onError(AgentSpan span, WebAppErrorReport report, Throwable servletThrowable) { span.setError(true); // make sure the two reported throwables are different throwables if (report.getCause() != null @@ -165,7 +162,6 @@ public AgentSpan onError(AgentSpan span, WebAppErrorReport report, Throwable ser span.addThrowable(report.getCause()); } span.setTag(DDTags.ERROR_MSG, report.getMessage()); - return span; } public static class LibertyBlockResponseFunction implements BlockResponseFunction { diff --git a/dd-java-agent/instrumentation/liberty/liberty-23.0/src/main/java/datadog/trace/instrumentation/liberty23/LibertyDecorator.java b/dd-java-agent/instrumentation/liberty/liberty-23.0/src/main/java/datadog/trace/instrumentation/liberty23/LibertyDecorator.java index ae19d67a054..6a905991350 100644 --- a/dd-java-agent/instrumentation/liberty/liberty-23.0/src/main/java/datadog/trace/instrumentation/liberty23/LibertyDecorator.java +++ b/dd-java-agent/instrumentation/liberty/liberty-23.0/src/main/java/datadog/trace/instrumentation/liberty23/LibertyDecorator.java @@ -94,7 +94,7 @@ protected String requestedSessionId(final HttpServletRequest request) { } @Override - public AgentSpan onResponseStatus(AgentSpan span, int status) { + public void onResponseStatus(AgentSpan span, int status) { Integer currentStatus = (Integer) span.getTag(Tags.HTTP_STATUS); // do not set status if the tag is already there and it's an error span // we may have the status during response blocking, but in that case @@ -102,10 +102,9 @@ public AgentSpan onResponseStatus(AgentSpan span, int status) { if (currentStatus == null || !span.isError()) { super.onResponseStatus(span, status); } - return span; } - public AgentSpan getPath(AgentSpan span, HttpServletRequest request) { + public void getPath(AgentSpan span, HttpServletRequest request) { if (request != null) { String contextPath = request.getContextPath(); String servletPath = request.getServletPath(); @@ -120,7 +119,6 @@ public AgentSpan getPath(AgentSpan span, HttpServletRequest request) { request.setAttribute(DD_CONTEXT_PATH_ATTRIBUTE, contextPath); request.setAttribute(DD_SERVLET_PATH_ATTRIBUTE, servletPath); } - return span; } @Override @@ -128,7 +126,7 @@ protected boolean isAppSecOnResponseSeparate() { return true; } - public AgentSpan onResponse(AgentSpan span, SRTServletResponse response) { + public void onResponse(AgentSpan span, SRTServletResponse response) { HttpServletRequest req = response.getRequest(); if (Config.get().isServletPrincipalEnabled() && req.getUserPrincipal() != null) { @@ -155,10 +153,9 @@ public AgentSpan onResponse(AgentSpan span, SRTServletResponse response) { span.setError(true); span.setTag(DDTags.ERROR_MSG, (String) errorMessage); } - return span; } - public AgentSpan onError(AgentSpan span, WebAppErrorReport report, Throwable servletThrowable) { + public void onError(AgentSpan span, WebAppErrorReport report, Throwable servletThrowable) { span.setError(true); // make sure the two reported throwables are different throwables if (report.getCause() != null @@ -166,7 +163,6 @@ public AgentSpan onError(AgentSpan span, WebAppErrorReport report, Throwable ser span.addThrowable(report.getCause()); } span.setTag(DDTags.ERROR_MSG, report.getMessage()); - return span; } public static class LibertyBlockResponseFunction implements BlockResponseFunction { diff --git a/dd-java-agent/instrumentation/mongo/mongo-common/src/main/java/datadog/trace/instrumentation/mongo/MongoDecorator.java b/dd-java-agent/instrumentation/mongo/mongo-common/src/main/java/datadog/trace/instrumentation/mongo/MongoDecorator.java index bb6c0f7d8bd..2f882c1ac47 100644 --- a/dd-java-agent/instrumentation/mongo/mongo-common/src/main/java/datadog/trace/instrumentation/mongo/MongoDecorator.java +++ b/dd-java-agent/instrumentation/mongo/mongo-common/src/main/java/datadog/trace/instrumentation/mongo/MongoDecorator.java @@ -67,18 +67,17 @@ protected final String dbHostname(CommandStartedEvent event) { return null; } - public final AgentSpan onStatement( + public final void onStatement( @Nonnull final AgentSpan span, @Nonnull final BsonDocument statement) { - return onStatement(span, statement, null); + onStatement(span, statement, null); } - public final AgentSpan onStatement( + public final void onStatement( @Nonnull final AgentSpan span, @Nonnull final BsonDocument statement, @Nullable ContextStore byteBufAccessor) { // scrub the Mongo command so that parameters are removed from the string span.setResourceName(scrub(statement, byteBufAccessor)); - return span; } @Override diff --git a/dd-java-agent/instrumentation/mule-4.5/src/main/java/datadog/trace/instrumentation/mule4/DDEventTracer.java b/dd-java-agent/instrumentation/mule-4.5/src/main/java/datadog/trace/instrumentation/mule4/DDEventTracer.java index 64ac273326b..e771a940c4a 100644 --- a/dd-java-agent/instrumentation/mule-4.5/src/main/java/datadog/trace/instrumentation/mule4/DDEventTracer.java +++ b/dd-java-agent/instrumentation/mule-4.5/src/main/java/datadog/trace/instrumentation/mule4/DDEventTracer.java @@ -95,7 +95,7 @@ private void handleNewSpan(CoreEvent event, InitialSpanInfo spanInfo) { final EventContext eventContext = event.getContext(); final AgentSpan span = - DECORATE.onMuleSpan(findParent(eventContext), spanInfo, event, findComponent(spanInfo)); + DECORATE.startMuleSpan(findParent(eventContext), spanInfo, event, findComponent(spanInfo)); linkToContext(eventContext, span); } @@ -110,7 +110,8 @@ private void handleEndOfSpan(CoreEvent event) { } if (spanState.getSpanContextSpan() != null) { final AgentSpan span = spanState.getSpanContextSpan(); - DECORATE.beforeFinish(span).finish(); + DECORATE.beforeFinish(span); + span.finish(); } eventContextStore.put(eventContext, spanState.getPreviousState()); } diff --git a/dd-java-agent/instrumentation/mule-4.5/src/main/java/datadog/trace/instrumentation/mule4/MuleDecorator.java b/dd-java-agent/instrumentation/mule-4.5/src/main/java/datadog/trace/instrumentation/mule4/MuleDecorator.java index 84db07d3e55..09f8b4ff0b1 100644 --- a/dd-java-agent/instrumentation/mule-4.5/src/main/java/datadog/trace/instrumentation/mule4/MuleDecorator.java +++ b/dd-java-agent/instrumentation/mule-4.5/src/main/java/datadog/trace/instrumentation/mule4/MuleDecorator.java @@ -51,13 +51,13 @@ protected CharSequence component() { } @Override - public AgentSpan afterStart(final AgentSpan span) { + public void afterStart(final AgentSpan span) { span.setMeasured(true); span.setTag(Tags.SPAN_KIND, Tags.SPAN_KIND_INTERNAL); - return super.afterStart(span); + super.afterStart(span); } - public AgentSpan onMuleSpan( + public AgentSpan startMuleSpan( AgentSpan parentSpan, InitialSpanInfo spanInfo, CoreEvent event, Component component) { // we stick with the same level of detail of OTEL exporter. // if not exportable we're not going to create a real span but we still need to track those @@ -89,6 +89,7 @@ public AgentSpan onMuleSpan( } else { span.setResourceName(spanInfo.getName()); } - return afterStart(span); + afterStart(span); + return span; } } diff --git a/dd-java-agent/instrumentation/netty/netty-3.8/src/main/java/datadog/trace/instrumentation/netty38/server/websocket/WebSocketServerRequestTracingHandler.java b/dd-java-agent/instrumentation/netty/netty-3.8/src/main/java/datadog/trace/instrumentation/netty38/server/websocket/WebSocketServerRequestTracingHandler.java index 6abae5803a6..7f7fcfa5330 100644 --- a/dd-java-agent/instrumentation/netty/netty-3.8/src/main/java/datadog/trace/instrumentation/netty38/server/websocket/WebSocketServerRequestTracingHandler.java +++ b/dd-java-agent/instrumentation/netty/netty-3.8/src/main/java/datadog/trace/instrumentation/netty38/server/websocket/WebSocketServerRequestTracingHandler.java @@ -53,7 +53,7 @@ public void messageReceived(ChannelHandlerContext ctx, MessageEvent event) throw TextWebSocketFrame textFrame = (TextWebSocketFrame) frame; final AgentSpan span = - DECORATE.onReceiveFrameStart( + DECORATE.startInboundFrameSpan( receiverContext, textFrame.getText(), textFrame.isFinalFragment()); try (final ContextScope scope = activateSpan(span)) { ctx.sendUpstream(event); @@ -71,7 +71,7 @@ public void messageReceived(ChannelHandlerContext ctx, MessageEvent event) throw // WebSocket Read Binary Start BinaryWebSocketFrame binaryFrame = (BinaryWebSocketFrame) frame; final AgentSpan span = - DECORATE.onReceiveFrameStart( + DECORATE.startInboundFrameSpan( receiverContext, binaryFrame.getBinaryData().array(), binaryFrame.isFinalFragment()); @@ -92,7 +92,7 @@ public void messageReceived(ChannelHandlerContext ctx, MessageEvent event) throw ContinuationWebSocketFrame continuationWebSocketFrame = (ContinuationWebSocketFrame) frame; final AgentSpan span = - DECORATE.onReceiveFrameStart( + DECORATE.startInboundFrameSpan( receiverContext, MESSAGE_TYPE_TEXT.equals(receiverContext.getMessageType()) ? continuationWebSocketFrame.getText() @@ -117,7 +117,7 @@ public void messageReceived(ChannelHandlerContext ctx, MessageEvent event) throw traceContext.setSenderHandlerContext(null); traceContext.setReceiverHandlerContext(null); final AgentSpan span = - DECORATE.onSessionCloseReceived(receiverContext, reasonText, statusCode); + DECORATE.startInboundCloseSpan(receiverContext, reasonText, statusCode); try (final ContextScope scope = activateSpan(span)) { ctx.sendUpstream(event); if (closeFrame.isFinalFragment()) { diff --git a/dd-java-agent/instrumentation/netty/netty-3.8/src/main/java/datadog/trace/instrumentation/netty38/server/websocket/WebSocketServerResponseTracingHandler.java b/dd-java-agent/instrumentation/netty/netty-3.8/src/main/java/datadog/trace/instrumentation/netty38/server/websocket/WebSocketServerResponseTracingHandler.java index e05ef0bd455..3b016b5d9b0 100644 --- a/dd-java-agent/instrumentation/netty/netty-3.8/src/main/java/datadog/trace/instrumentation/netty38/server/websocket/WebSocketServerResponseTracingHandler.java +++ b/dd-java-agent/instrumentation/netty/netty-3.8/src/main/java/datadog/trace/instrumentation/netty38/server/websocket/WebSocketServerResponseTracingHandler.java @@ -44,7 +44,7 @@ public void writeRequested(ChannelHandlerContext ctx, MessageEvent event) throws // WebSocket Write Text Start TextWebSocketFrame textFrame = (TextWebSocketFrame) frame; final AgentSpan span = - DECORATE.onSendFrameStart( + DECORATE.startOutboundFrameSpan( handlerContext, MESSAGE_TYPE_TEXT, textFrame.getText().length()); try (final ContextScope scope = activateSpan(span)) { ctx.sendDownstream(event); @@ -61,7 +61,7 @@ public void writeRequested(ChannelHandlerContext ctx, MessageEvent event) throws // WebSocket Write Binary Start BinaryWebSocketFrame binaryFrame = (BinaryWebSocketFrame) frame; final AgentSpan span = - DECORATE.onSendFrameStart( + DECORATE.startOutboundFrameSpan( handlerContext, MESSAGE_TYPE_BINARY, binaryFrame.getBinaryData().readableBytes()); @@ -80,7 +80,7 @@ public void writeRequested(ChannelHandlerContext ctx, MessageEvent event) throws ContinuationWebSocketFrame continuationWebSocketFrame = (ContinuationWebSocketFrame) frame; final AgentSpan span = - DECORATE.onSendFrameStart( + DECORATE.startOutboundFrameSpan( handlerContext, handlerContext.getMessageType(), MESSAGE_TYPE_TEXT.equals(handlerContext.getMessageType()) @@ -104,7 +104,7 @@ public void writeRequested(ChannelHandlerContext ctx, MessageEvent event) throws String reasonText = closeFrame.getReasonText(); traceContext.setSenderHandlerContext(null); final AgentSpan span = - DECORATE.onSessionCloseIssued(handlerContext, reasonText, statusCode); + DECORATE.startOutboundCloseSpan(handlerContext, reasonText, statusCode); try (final ContextScope scope = activateSpan(span)) { ctx.sendDownstream(event); } finally { diff --git a/dd-java-agent/instrumentation/netty/netty-4.0/src/main/java/datadog/trace/instrumentation/netty40/server/websocket/WebSocketServerRequestTracingHandler.java b/dd-java-agent/instrumentation/netty/netty-4.0/src/main/java/datadog/trace/instrumentation/netty40/server/websocket/WebSocketServerRequestTracingHandler.java index 5d6bbec1ee0..6ba233ae0e9 100644 --- a/dd-java-agent/instrumentation/netty/netty-4.0/src/main/java/datadog/trace/instrumentation/netty40/server/websocket/WebSocketServerRequestTracingHandler.java +++ b/dd-java-agent/instrumentation/netty/netty-4.0/src/main/java/datadog/trace/instrumentation/netty40/server/websocket/WebSocketServerRequestTracingHandler.java @@ -41,7 +41,7 @@ public void channelRead(ChannelHandlerContext ctx, Object frame) { TextWebSocketFrame textFrame = (TextWebSocketFrame) frame; final AgentSpan span = - DECORATE.onReceiveFrameStart( + DECORATE.startInboundFrameSpan( receiverContext, textFrame.text(), textFrame.isFinalFragment()); try (final ContextScope scope = activateSpan(span)) { ctx.fireChannelRead(textFrame); @@ -59,7 +59,7 @@ public void channelRead(ChannelHandlerContext ctx, Object frame) { // WebSocket Read Binary Start BinaryWebSocketFrame binaryFrame = (BinaryWebSocketFrame) frame; final AgentSpan span = - DECORATE.onReceiveFrameStart( + DECORATE.startInboundFrameSpan( receiverContext, binaryFrame.content().nioBuffer(), binaryFrame.isFinalFragment()); @@ -80,7 +80,7 @@ public void channelRead(ChannelHandlerContext ctx, Object frame) { ContinuationWebSocketFrame continuationWebSocketFrame = (ContinuationWebSocketFrame) frame; final AgentSpan span = - DECORATE.onReceiveFrameStart( + DECORATE.startInboundFrameSpan( receiverContext, MESSAGE_TYPE_TEXT.equals(receiverContext.getMessageType()) ? continuationWebSocketFrame.text() @@ -105,7 +105,7 @@ public void channelRead(ChannelHandlerContext ctx, Object frame) { channel.attr(WEBSOCKET_SENDER_HANDLER_CONTEXT).remove(); channel.attr(WEBSOCKET_RECEIVER_HANDLER_CONTEXT).remove(); final AgentSpan span = - DECORATE.onSessionCloseReceived(receiverContext, reasonText, statusCode); + DECORATE.startInboundCloseSpan(receiverContext, reasonText, statusCode); try (final ContextScope scope = activateSpan(span)) { ctx.fireChannelRead(closeFrame); if (closeFrame.isFinalFragment()) { diff --git a/dd-java-agent/instrumentation/netty/netty-4.0/src/main/java/datadog/trace/instrumentation/netty40/server/websocket/WebSocketServerResponseTracingHandler.java b/dd-java-agent/instrumentation/netty/netty-4.0/src/main/java/datadog/trace/instrumentation/netty40/server/websocket/WebSocketServerResponseTracingHandler.java index bb6cd290ee8..b2908f35182 100644 --- a/dd-java-agent/instrumentation/netty/netty-4.0/src/main/java/datadog/trace/instrumentation/netty40/server/websocket/WebSocketServerResponseTracingHandler.java +++ b/dd-java-agent/instrumentation/netty/netty-4.0/src/main/java/datadog/trace/instrumentation/netty40/server/websocket/WebSocketServerResponseTracingHandler.java @@ -30,7 +30,7 @@ public void write(ChannelHandlerContext ctx, Object frame, ChannelPromise promis // WebSocket Write Text Start TextWebSocketFrame textFrame = (TextWebSocketFrame) frame; final AgentSpan span = - DECORATE.onSendFrameStart( + DECORATE.startOutboundFrameSpan( handlerContext, MESSAGE_TYPE_TEXT, textFrame.text().length()); try (final ContextScope scope = activateSpan(span)) { ctx.write(frame, promise); @@ -47,7 +47,7 @@ public void write(ChannelHandlerContext ctx, Object frame, ChannelPromise promis // WebSocket Write Binary Start BinaryWebSocketFrame binaryFrame = (BinaryWebSocketFrame) frame; final AgentSpan span = - DECORATE.onSendFrameStart( + DECORATE.startOutboundFrameSpan( handlerContext, MESSAGE_TYPE_BINARY, binaryFrame.content().readableBytes()); try (final ContextScope scope = activateSpan(span)) { ctx.write(frame, promise); @@ -64,7 +64,7 @@ public void write(ChannelHandlerContext ctx, Object frame, ChannelPromise promis ContinuationWebSocketFrame continuationWebSocketFrame = (ContinuationWebSocketFrame) frame; final AgentSpan span = - DECORATE.onSendFrameStart( + DECORATE.startOutboundFrameSpan( handlerContext, handlerContext.getMessageType(), MESSAGE_TYPE_TEXT.equals(handlerContext.getMessageType()) @@ -88,7 +88,7 @@ public void write(ChannelHandlerContext ctx, Object frame, ChannelPromise promis String reasonText = closeFrame.reasonText(); channel.attr(WEBSOCKET_SENDER_HANDLER_CONTEXT).remove(); final AgentSpan span = - DECORATE.onSessionCloseIssued(handlerContext, reasonText, statusCode); + DECORATE.startOutboundCloseSpan(handlerContext, reasonText, statusCode); try (final ContextScope scope = activateSpan(span)) { ctx.write(frame, promise); } finally { diff --git a/dd-java-agent/instrumentation/netty/netty-4.1/src/main/java/datadog/trace/instrumentation/netty41/server/websocket/WebSocketServerInboundTracingHandler.java b/dd-java-agent/instrumentation/netty/netty-4.1/src/main/java/datadog/trace/instrumentation/netty41/server/websocket/WebSocketServerInboundTracingHandler.java index 24aab8b5500..a315aa667d8 100644 --- a/dd-java-agent/instrumentation/netty/netty-4.1/src/main/java/datadog/trace/instrumentation/netty41/server/websocket/WebSocketServerInboundTracingHandler.java +++ b/dd-java-agent/instrumentation/netty/netty-4.1/src/main/java/datadog/trace/instrumentation/netty41/server/websocket/WebSocketServerInboundTracingHandler.java @@ -42,7 +42,7 @@ public void channelRead(ChannelHandlerContext ctx, Object frame) { TextWebSocketFrame textFrame = (TextWebSocketFrame) frame; final AgentSpan span = - DECORATE.onReceiveFrameStart( + DECORATE.startInboundFrameSpan( receiverContext, textFrame.text(), textFrame.isFinalFragment()); try (final ContextScope scope = activateSpan(span)) { ctx.fireChannelRead(textFrame); @@ -60,7 +60,7 @@ public void channelRead(ChannelHandlerContext ctx, Object frame) { // WebSocket Read Binary Start BinaryWebSocketFrame binaryFrame = (BinaryWebSocketFrame) frame; final AgentSpan span = - DECORATE.onReceiveFrameStart( + DECORATE.startInboundFrameSpan( receiverContext, binaryFrame.content().nioBuffer(), binaryFrame.isFinalFragment()); @@ -81,7 +81,7 @@ public void channelRead(ChannelHandlerContext ctx, Object frame) { ContinuationWebSocketFrame continuationWebSocketFrame = (ContinuationWebSocketFrame) frame; final AgentSpan span = - DECORATE.onReceiveFrameStart( + DECORATE.startInboundFrameSpan( receiverContext, MESSAGE_TYPE_TEXT.equals(receiverContext.getMessageType()) ? continuationWebSocketFrame.text() @@ -106,7 +106,7 @@ public void channelRead(ChannelHandlerContext ctx, Object frame) { channel.attr(WEBSOCKET_SENDER_HANDLER_CONTEXT).remove(); channel.attr(WEBSOCKET_RECEIVER_HANDLER_CONTEXT).remove(); final AgentSpan span = - DECORATE.onSessionCloseReceived(receiverContext, reasonText, statusCode); + DECORATE.startInboundCloseSpan(receiverContext, reasonText, statusCode); try (final ContextScope scope = activateSpan(span)) { ctx.fireChannelRead(closeFrame); if (closeFrame.isFinalFragment()) { diff --git a/dd-java-agent/instrumentation/netty/netty-4.1/src/main/java/datadog/trace/instrumentation/netty41/server/websocket/WebSocketServerOutboundTracingHandler.java b/dd-java-agent/instrumentation/netty/netty-4.1/src/main/java/datadog/trace/instrumentation/netty41/server/websocket/WebSocketServerOutboundTracingHandler.java index 3f1b7a69674..49413fce6d4 100644 --- a/dd-java-agent/instrumentation/netty/netty-4.1/src/main/java/datadog/trace/instrumentation/netty41/server/websocket/WebSocketServerOutboundTracingHandler.java +++ b/dd-java-agent/instrumentation/netty/netty-4.1/src/main/java/datadog/trace/instrumentation/netty41/server/websocket/WebSocketServerOutboundTracingHandler.java @@ -34,7 +34,7 @@ public void write(ChannelHandlerContext ctx, Object frame, ChannelPromise promis // WebSocket Write Text Start TextWebSocketFrame textFrame = (TextWebSocketFrame) frame; final AgentSpan span = - DECORATE.onSendFrameStart( + DECORATE.startOutboundFrameSpan( handlerContext, MESSAGE_TYPE_TEXT, textFrame.text().length()); try (final ContextScope scope = activateSpan(span)) { ctx.write(frame, promise); @@ -51,7 +51,7 @@ public void write(ChannelHandlerContext ctx, Object frame, ChannelPromise promis // WebSocket Write Binary Start BinaryWebSocketFrame binaryFrame = (BinaryWebSocketFrame) frame; final AgentSpan span = - DECORATE.onSendFrameStart( + DECORATE.startOutboundFrameSpan( handlerContext, MESSAGE_TYPE_BINARY, binaryFrame.content().readableBytes()); try (final ContextScope scope = activateSpan(span)) { ctx.write(frame, promise); @@ -68,7 +68,7 @@ public void write(ChannelHandlerContext ctx, Object frame, ChannelPromise promis ContinuationWebSocketFrame continuationWebSocketFrame = (ContinuationWebSocketFrame) frame; final AgentSpan span = - DECORATE.onSendFrameStart( + DECORATE.startOutboundFrameSpan( handlerContext, handlerContext.getMessageType(), MESSAGE_TYPE_TEXT.equals(handlerContext.getMessageType()) @@ -92,7 +92,7 @@ public void write(ChannelHandlerContext ctx, Object frame, ChannelPromise promis String reasonText = closeFrame.reasonText(); channel.attr(WEBSOCKET_SENDER_HANDLER_CONTEXT).remove(); final AgentSpan span = - DECORATE.onSessionCloseIssued(handlerContext, reasonText, statusCode); + DECORATE.startOutboundCloseSpan(handlerContext, reasonText, statusCode); try (final ContextScope scope = activateSpan(span)) { ctx.write(frame, promise); } finally { diff --git a/dd-java-agent/instrumentation/openai-java/openai-java-3.0/src/main/java/datadog/trace/instrumentation/openai_java/OpenAiDecorator.java b/dd-java-agent/instrumentation/openai-java/openai-java-3.0/src/main/java/datadog/trace/instrumentation/openai_java/OpenAiDecorator.java index f1adcfcaeb7..3431de4302c 100644 --- a/dd-java-agent/instrumentation/openai-java/openai-java-3.0/src/main/java/datadog/trace/instrumentation/openai_java/OpenAiDecorator.java +++ b/dd-java-agent/instrumentation/openai-java/openai-java-3.0/src/main/java/datadog/trace/instrumentation/openai_java/OpenAiDecorator.java @@ -92,7 +92,7 @@ protected CharSequence component() { } @Override - public AgentSpan afterStart(AgentSpan span) { + public void afterStart(AgentSpan span) { if (llmObsEnabled) { // set global dd_tags as base layer so UST and span-level tags can override them for (Map.Entry entry : Config.get().getGlobalTags().entrySet()) { @@ -126,11 +126,11 @@ public AgentSpan afterStart(AgentSpan span) { span.setTag(CommonTags.SESSION_ID, sessionId); } } - return super.afterStart(span); + super.afterStart(span); } @Override - public AgentSpan beforeFinish(AgentSpan span) { + public void beforeFinish(AgentSpan span) { if (llmObsEnabled) { span.setTag(CommonTags.ERROR, span.isError() ? 1 : 0); span.setTag(CommonTags.ERROR_TYPE, span.getTag(DDTags.ERROR_TYPE)); @@ -143,7 +143,7 @@ public AgentSpan beforeFinish(AgentSpan span) { .recordSpanFinished(INTEGRATION, spanKind, isRootSpan, true, span.isError(), false); } } - return super.beforeFinish(span); + super.beforeFinish(span); } public void withHttpResponse(AgentSpan span, Headers headers) { diff --git a/dd-java-agent/instrumentation/opensearch/opensearch-common/src/main/java/datadog/trace/instrumentation/opensearch/OpensearchRestClientDecorator.java b/dd-java-agent/instrumentation/opensearch/opensearch-common/src/main/java/datadog/trace/instrumentation/opensearch/OpensearchRestClientDecorator.java index ec07a1c8e55..95ffcfa059c 100644 --- a/dd-java-agent/instrumentation/opensearch/opensearch-common/src/main/java/datadog/trace/instrumentation/opensearch/OpensearchRestClientDecorator.java +++ b/dd-java-agent/instrumentation/opensearch/opensearch-common/src/main/java/datadog/trace/instrumentation/opensearch/OpensearchRestClientDecorator.java @@ -84,7 +84,7 @@ private String getOpensearchRequestBody(HttpEntity entity) { } } - public AgentSpan onRequest( + public void onRequest( final AgentSpan span, final String method, final String endpoint, @@ -125,14 +125,13 @@ public AgentSpan onRequest( span.setTag("opensearch.params", queryParametersStringBuilder.toString()); } } - return HTTP_RESOURCE_DECORATOR.withClientPath(span, method, endpoint); + HTTP_RESOURCE_DECORATOR.withClientPath(span, method, endpoint); } - public AgentSpan onResponse(final AgentSpan span, final Response response) { + public void onResponse(final AgentSpan span, final Response response) { if (response != null && response.getHost() != null) { span.setTag(Tags.PEER_HOSTNAME, response.getHost().getHostName()); setPeerPort(span, response.getHost().getPort()); } - return span; } } diff --git a/dd-java-agent/instrumentation/opensearch/opensearch-common/src/main/java/datadog/trace/instrumentation/opensearch/OpensearchTransportClientDecorator.java b/dd-java-agent/instrumentation/opensearch/opensearch-common/src/main/java/datadog/trace/instrumentation/opensearch/OpensearchTransportClientDecorator.java index a91b3dffcbc..04faf2ae2a6 100644 --- a/dd-java-agent/instrumentation/opensearch/opensearch-common/src/main/java/datadog/trace/instrumentation/opensearch/OpensearchTransportClientDecorator.java +++ b/dd-java-agent/instrumentation/opensearch/opensearch-common/src/main/java/datadog/trace/instrumentation/opensearch/OpensearchTransportClientDecorator.java @@ -59,7 +59,7 @@ protected String dbHostname(Object o) { return null; } - public AgentSpan onRequest(final AgentSpan span, final Class action, final Class request) { + public void onRequest(final AgentSpan span, final Class action, final Class request) { if (action != null) { String actionName = action.getSimpleName(); if ("AutoPutMappingAction".equals(actionName)) { @@ -71,6 +71,5 @@ public AgentSpan onRequest(final AgentSpan span, final Class action, final Class if (request != null) { span.setTag("opensearch.request", request.getSimpleName()); } - return span; } } diff --git a/dd-java-agent/instrumentation/play/play-2.3/src/main/java/datadog/trace/instrumentation/play23/PlayHttpServerDecorator.java b/dd-java-agent/instrumentation/play/play-2.3/src/main/java/datadog/trace/instrumentation/play23/PlayHttpServerDecorator.java index 70ffeaca3f2..7d7e3e06bc4 100644 --- a/dd-java-agent/instrumentation/play/play-2.3/src/main/java/datadog/trace/instrumentation/play23/PlayHttpServerDecorator.java +++ b/dd-java-agent/instrumentation/play/play-2.3/src/main/java/datadog/trace/instrumentation/play23/PlayHttpServerDecorator.java @@ -84,7 +84,7 @@ protected int status(final play.api.mvc.Result httpResponse) { } @Override - public AgentSpan onRequest( + public void onRequest( final AgentSpan span, final Request connection, final Request request, @@ -107,7 +107,6 @@ public AgentSpan onRequest( dispatchRoute(span, path); } } - return span; } /** @@ -163,7 +162,7 @@ private static Request withCapturedPeer(final AgentSpan span, final Request connection, final Request request, @@ -107,7 +107,6 @@ public AgentSpan onRequest( dispatchRoute(span, path); } } - return span; } /** @@ -163,7 +162,7 @@ private static Request withCapturedPeer(final AgentSpan span, final Request connection, final Request request, @@ -155,7 +155,6 @@ public AgentSpan onRequest( dispatchRoute(span, path); } } - return span; } /** @@ -214,7 +213,7 @@ private CharSequence addMissingSlash(String routePath, String rawPath) { } @Override - public AgentSpan onError(final AgentSpan span, Throwable throwable) { + public void onError(final AgentSpan span, Throwable throwable) { if (REPORT_HTTP_STATUS) { span.setHttpStatusCode(500); } @@ -226,7 +225,7 @@ public AgentSpan onError(final AgentSpan span, Throwable throwable) { && throwable.getCause() != null) { throwable = throwable.getCause(); } - return super.onError(span, throwable); + super.onError(span, throwable); } public void updateOn404Only(final AgentSpan span, final Result result) { diff --git a/dd-java-agent/instrumentation/quartz-2.0/src/main/java/datadog/trace/instrumentation/quartz/QuartzDecorator.java b/dd-java-agent/instrumentation/quartz-2.0/src/main/java/datadog/trace/instrumentation/quartz/QuartzDecorator.java index fba0e49e2fe..bafb9ae23ee 100644 --- a/dd-java-agent/instrumentation/quartz-2.0/src/main/java/datadog/trace/instrumentation/quartz/QuartzDecorator.java +++ b/dd-java-agent/instrumentation/quartz-2.0/src/main/java/datadog/trace/instrumentation/quartz/QuartzDecorator.java @@ -34,7 +34,7 @@ protected CharSequence component() { return "quartz"; } - public AgentSpan onExecute(final AgentSpan span, JobExecutionContext context) { + public void onExecute(final AgentSpan span, JobExecutionContext context) { if (context != null) { if (context.getJobInstance() != null) { span.setTag(DDTags.RESOURCE_NAME, context.getJobInstance().getClass()).toString(); @@ -52,6 +52,5 @@ public AgentSpan onExecute(final AgentSpan span, JobExecutionContext context) { } } } - return span; } } diff --git a/dd-java-agent/instrumentation/ratpack-1.5/src/main/java/datadog/trace/instrumentation/ratpack/RatpackServerDecorator.java b/dd-java-agent/instrumentation/ratpack-1.5/src/main/java/datadog/trace/instrumentation/ratpack/RatpackServerDecorator.java index 205ae8832fe..e8e355c75c4 100644 --- a/dd-java-agent/instrumentation/ratpack-1.5/src/main/java/datadog/trace/instrumentation/ratpack/RatpackServerDecorator.java +++ b/dd-java-agent/instrumentation/ratpack-1.5/src/main/java/datadog/trace/instrumentation/ratpack/RatpackServerDecorator.java @@ -77,7 +77,7 @@ protected int status(final Response response) { } } - public AgentSpan onContext(final AgentSpan span, final Context ctx) { + public void onContext(final AgentSpan span, final Context ctx) { String description = ctx.getPathBinding().getDescription(); if (description == null || description.isEmpty()) { @@ -87,16 +87,15 @@ public AgentSpan onContext(final AgentSpan span, final Context ctx) { } HTTP_RESOURCE_DECORATOR.withRoute(span, ctx.getRequest().getMethod().getName(), description); - - return span; } @Override - public AgentSpan onError(final AgentSpan span, Throwable throwable) { + public void onError(final AgentSpan span, Throwable throwable) { // Attempt to unwrap ratpack.handling.internal.HandlerException without direct reference. if (throwable instanceof Error && throwable.getCause() != null) { - return super.onError(span, throwable.getCause()); + super.onError(span, throwable.getCause()); + } else { + super.onError(span, throwable); } - return super.onError(span, throwable); } } diff --git a/dd-java-agent/instrumentation/rediscala-1.8/src/main/java/datadog/trace/instrumentation/rediscala/RediscalaClientDecorator.java b/dd-java-agent/instrumentation/rediscala-1.8/src/main/java/datadog/trace/instrumentation/rediscala/RediscalaClientDecorator.java index 3205409a63e..41e566312f1 100644 --- a/dd-java-agent/instrumentation/rediscala-1.8/src/main/java/datadog/trace/instrumentation/rediscala/RediscalaClientDecorator.java +++ b/dd-java-agent/instrumentation/rediscala-1.8/src/main/java/datadog/trace/instrumentation/rediscala/RediscalaClientDecorator.java @@ -59,11 +59,11 @@ protected String dbHostname(final RedisConnectionInfo redisConnectionInfo) { } @Override - public AgentSpan onConnection(final AgentSpan span, final RedisConnectionInfo connection) { + public void onConnection(final AgentSpan span, final RedisConnectionInfo connection) { if (connection != null) { setPeerPort(span, connection.port); span.setTag("db.redis.dbIndex", connection.dbIndex); } - return super.onConnection(span, connection); + super.onConnection(span, connection); } } diff --git a/dd-java-agent/instrumentation/resilience4j/resilience4j-2.0/src/main/java/datadog/trace/instrumentation/resilience4j/Resilience4jSpanDecorator.java b/dd-java-agent/instrumentation/resilience4j/resilience4j-2.0/src/main/java/datadog/trace/instrumentation/resilience4j/Resilience4jSpanDecorator.java index 93a24368c7f..0e43b284e6b 100644 --- a/dd-java-agent/instrumentation/resilience4j/resilience4j-2.0/src/main/java/datadog/trace/instrumentation/resilience4j/Resilience4jSpanDecorator.java +++ b/dd-java-agent/instrumentation/resilience4j/resilience4j-2.0/src/main/java/datadog/trace/instrumentation/resilience4j/Resilience4jSpanDecorator.java @@ -27,14 +27,13 @@ protected CharSequence component() { } @Override - public AgentSpan afterStart(AgentSpan span) { + public void afterStart(AgentSpan span) { super.afterStart(span); span.setSpanName(RESILIENCE4J); span.setTag(Tags.SPAN_KIND, Tags.SPAN_KIND_INTERNAL); if (Config.get().isResilience4jMeasuredEnabled()) { span.setMeasured(true); } - return span; } public void decorate(AgentSpan span, T data) {} diff --git a/dd-java-agent/instrumentation/servlet/javax-servlet/javax-servlet-2.2/src/main/java/datadog/trace/instrumentation/servlet2/Servlet2Decorator.java b/dd-java-agent/instrumentation/servlet/javax-servlet/javax-servlet-2.2/src/main/java/datadog/trace/instrumentation/servlet2/Servlet2Decorator.java index b93877f73ed..202b67602a1 100644 --- a/dd-java-agent/instrumentation/servlet/javax-servlet/javax-servlet-2.2/src/main/java/datadog/trace/instrumentation/servlet2/Servlet2Decorator.java +++ b/dd-java-agent/instrumentation/servlet/javax-servlet/javax-servlet-2.2/src/main/java/datadog/trace/instrumentation/servlet2/Servlet2Decorator.java @@ -80,7 +80,7 @@ protected int status(final Integer status) { } @Override - public AgentSpan onRequest( + public void onRequest( final AgentSpan span, final HttpServletRequest connection, final HttpServletRequest request, @@ -90,6 +90,6 @@ public AgentSpan onRequest( span.setTag("servlet.context", request.getContextPath()); span.setTag("servlet.path", request.getServletPath()); } - return super.onRequest(span, connection, request, parentContext); + super.onRequest(span, connection, request, parentContext); } } diff --git a/dd-java-agent/instrumentation/servlet/javax-servlet/javax-servlet-3.0/src/main/java/datadog/trace/instrumentation/servlet3/Servlet3Decorator.java b/dd-java-agent/instrumentation/servlet/javax-servlet/javax-servlet-3.0/src/main/java/datadog/trace/instrumentation/servlet3/Servlet3Decorator.java index 67332c5b581..e96cb1a8f3e 100644 --- a/dd-java-agent/instrumentation/servlet/javax-servlet/javax-servlet-3.0/src/main/java/datadog/trace/instrumentation/servlet3/Servlet3Decorator.java +++ b/dd-java-agent/instrumentation/servlet/javax-servlet/javax-servlet-3.0/src/main/java/datadog/trace/instrumentation/servlet3/Servlet3Decorator.java @@ -97,7 +97,7 @@ protected String getRequestHeader(final HttpServletRequest request, String key) } @Override - public AgentSpan onRequest( + public void onRequest( final AgentSpan span, final HttpServletRequest connection, final HttpServletRequest request, @@ -116,17 +116,16 @@ public AgentSpan onRequest( request.setAttribute(DD_CONTEXT_PATH_ATTRIBUTE, contextPath); request.setAttribute(DD_SERVLET_PATH_ATTRIBUTE, servletPath); } - return super.onRequest(span, connection, request, parentContext); + super.onRequest(span, connection, request, parentContext); } @Override - public AgentSpan onError(final AgentSpan span, final Throwable throwable) { + public void onError(final AgentSpan span, final Throwable throwable) { if (throwable instanceof ServletException && throwable.getCause() != null) { super.onError(span, throwable.getCause()); } else { super.onError(span, throwable); } - return span; } /** diff --git a/dd-java-agent/instrumentation/servlet/javax-servlet/javax-servlet-common/src/main/java/datadog/trace/instrumentation/servlet/dispatcher/RequestDispatcherDecorator.java b/dd-java-agent/instrumentation/servlet/javax-servlet/javax-servlet-common/src/main/java/datadog/trace/instrumentation/servlet/dispatcher/RequestDispatcherDecorator.java index 8f23091e758..dd5c85e0696 100644 --- a/dd-java-agent/instrumentation/servlet/javax-servlet/javax-servlet-common/src/main/java/datadog/trace/instrumentation/servlet/dispatcher/RequestDispatcherDecorator.java +++ b/dd-java-agent/instrumentation/servlet/javax-servlet/javax-servlet-common/src/main/java/datadog/trace/instrumentation/servlet/dispatcher/RequestDispatcherDecorator.java @@ -34,13 +34,12 @@ protected CharSequence component() { } @Override - public AgentSpan onError(final AgentSpan span, final Throwable throwable) { + public void onError(final AgentSpan span, final Throwable throwable) { if (throwable instanceof ServletException && throwable.getCause() != null) { super.onError(span, throwable.getCause()); } else { super.onError(span, throwable); } - return span; } public void injectContext(Context context, final C request, CarrierSetter setter) { diff --git a/dd-java-agent/instrumentation/sofarpc/sofarpc-5.0/src/main/java/datadog/trace/instrumentation/sofarpc/SofaRpcClientDecorator.java b/dd-java-agent/instrumentation/sofarpc/sofarpc-5.0/src/main/java/datadog/trace/instrumentation/sofarpc/SofaRpcClientDecorator.java index 4e9cc7e29f9..a626be864dd 100644 --- a/dd-java-agent/instrumentation/sofarpc/sofarpc-5.0/src/main/java/datadog/trace/instrumentation/sofarpc/SofaRpcClientDecorator.java +++ b/dd-java-agent/instrumentation/sofarpc/sofarpc-5.0/src/main/java/datadog/trace/instrumentation/sofarpc/SofaRpcClientDecorator.java @@ -39,10 +39,10 @@ protected String service() { return null; } - public AgentSpan onRequest(AgentSpan span, SofaRequest request) { + public void onRequest(AgentSpan span, SofaRequest request) { span.setTag("rpc.system", "sofarpc"); if (request == null) { - return span; + return; } String serviceName = request.getTargetServiceUniqueName(); String methodName = request.getMethodName(); @@ -54,14 +54,12 @@ public AgentSpan onRequest(AgentSpan span, SofaRequest request) { } else if (methodName != null) { span.setResourceName(methodName); } - return span; } - public AgentSpan onResponse(AgentSpan span, SofaResponse response) { + public void onResponse(AgentSpan span, SofaResponse response) { if (response != null && response.isError()) { span.setError(true); span.setTag("error.message", response.getErrorMsg()); } - return span; } } diff --git a/dd-java-agent/instrumentation/sofarpc/sofarpc-5.0/src/main/java/datadog/trace/instrumentation/sofarpc/SofaRpcServerDecorator.java b/dd-java-agent/instrumentation/sofarpc/sofarpc-5.0/src/main/java/datadog/trace/instrumentation/sofarpc/SofaRpcServerDecorator.java index 7fbbe329934..09097dbdfe7 100644 --- a/dd-java-agent/instrumentation/sofarpc/sofarpc-5.0/src/main/java/datadog/trace/instrumentation/sofarpc/SofaRpcServerDecorator.java +++ b/dd-java-agent/instrumentation/sofarpc/sofarpc-5.0/src/main/java/datadog/trace/instrumentation/sofarpc/SofaRpcServerDecorator.java @@ -35,15 +35,15 @@ protected CharSequence spanType() { } @Override - public AgentSpan afterStart(AgentSpan span) { + public void afterStart(AgentSpan span) { span.setMeasured(true); - return super.afterStart(span); + super.afterStart(span); } - public AgentSpan onRequest(AgentSpan span, SofaRequest request) { + public void onRequest(AgentSpan span, SofaRequest request) { span.setTag("rpc.system", "sofarpc"); if (request == null) { - return span; + return; } String serviceName = request.getTargetServiceUniqueName(); String methodName = request.getMethodName(); @@ -54,12 +54,11 @@ public AgentSpan onRequest(AgentSpan span, SofaRequest request) { } else if (methodName != null) { span.setResourceName(methodName); } - return span; } - public AgentSpan onResponse(AgentSpan span, SofaResponse response) { + public void onResponse(AgentSpan span, SofaResponse response) { if (response == null) { - return span; + return; } if (response.isError()) { // RPC-layer error (timeout, serialization failure, etc.) @@ -71,6 +70,5 @@ public AgentSpan onResponse(AgentSpan span, SofaResponse response) { span.setError(true); span.setTag("error.message", t.getMessage()); } - return span; } } diff --git a/dd-java-agent/instrumentation/spring/spring-scheduling-3.1/src/main/java/datadog/trace/instrumentation/springscheduling/SpringSchedulingDecorator.java b/dd-java-agent/instrumentation/spring/spring-scheduling-3.1/src/main/java/datadog/trace/instrumentation/springscheduling/SpringSchedulingDecorator.java index 863263df6d2..ca149b19830 100644 --- a/dd-java-agent/instrumentation/spring/spring-scheduling-3.1/src/main/java/datadog/trace/instrumentation/springscheduling/SpringSchedulingDecorator.java +++ b/dd-java-agent/instrumentation/spring/spring-scheduling-3.1/src/main/java/datadog/trace/instrumentation/springscheduling/SpringSchedulingDecorator.java @@ -26,7 +26,7 @@ protected CharSequence component() { return "spring-scheduling"; } - public AgentSpan onRun(final AgentSpan span, final Runnable runnable) { + public void onRun(final AgentSpan span, final Runnable runnable) { if (runnable != null) { CharSequence resourceName = ""; if (runnable instanceof ScheduledMethodRunnable) { @@ -37,6 +37,5 @@ public AgentSpan onRun(final AgentSpan span, final Runnable runnable) { } span.setResourceName(resourceName); } - return span; } } diff --git a/dd-java-agent/instrumentation/spring/spring-webmvc/spring-webmvc-3.1/src/main/java/datadog/trace/instrumentation/springweb/SpringWebHttpServerDecorator.java b/dd-java-agent/instrumentation/spring/spring-webmvc/spring-webmvc-3.1/src/main/java/datadog/trace/instrumentation/springweb/SpringWebHttpServerDecorator.java index 52ce8855048..1191761443f 100644 --- a/dd-java-agent/instrumentation/spring/spring-webmvc/spring-webmvc-3.1/src/main/java/datadog/trace/instrumentation/springweb/SpringWebHttpServerDecorator.java +++ b/dd-java-agent/instrumentation/spring/spring-webmvc/spring-webmvc-3.1/src/main/java/datadog/trace/instrumentation/springweb/SpringWebHttpServerDecorator.java @@ -98,7 +98,7 @@ protected String getRequestHeader(final HttpServletRequest request, String key) } @Override - public AgentSpan onRequest( + public void onRequest( final AgentSpan span, final HttpServletRequest connection, final HttpServletRequest request, @@ -111,7 +111,6 @@ public AgentSpan onRequest( HTTP_RESOURCE_DECORATOR.withRoute(span, method, bestMatchingPattern.toString()); } } - return span; } public void onHandle(final AgentSpan span, final Object handler) { @@ -139,7 +138,7 @@ private String getMethodName(final Object handler) { } } - public AgentSpan onRender(final AgentSpan span, final ModelAndView mv) { + public void onRender(final AgentSpan span, final ModelAndView mv) { final String viewName = mv.getViewName(); if (viewName != null) { span.setTag("view.name", viewName); @@ -148,6 +147,5 @@ public AgentSpan onRender(final AgentSpan span, final ModelAndView mv) { if (mv.getView() != null) { span.setTag("view.type", className(mv.getView().getClass())); } - return span; } } diff --git a/dd-java-agent/instrumentation/spring/spring-webmvc/spring-webmvc-6.0/src/main/java17/datadog/trace/instrumentation/springweb6/SpringWebHttpServerDecorator.java b/dd-java-agent/instrumentation/spring/spring-webmvc/spring-webmvc-6.0/src/main/java17/datadog/trace/instrumentation/springweb6/SpringWebHttpServerDecorator.java index 79b89c1aad5..f237944377c 100644 --- a/dd-java-agent/instrumentation/spring/spring-webmvc/spring-webmvc-6.0/src/main/java17/datadog/trace/instrumentation/springweb6/SpringWebHttpServerDecorator.java +++ b/dd-java-agent/instrumentation/spring/spring-webmvc/spring-webmvc-6.0/src/main/java17/datadog/trace/instrumentation/springweb6/SpringWebHttpServerDecorator.java @@ -102,7 +102,7 @@ protected int status(final HttpServletResponse httpServletResponse) { } @Override - public AgentSpan onRequest( + public void onRequest( final AgentSpan span, final HttpServletRequest connection, final HttpServletRequest request, @@ -118,7 +118,6 @@ public AgentSpan onRequest( HTTP_RESOURCE_DECORATOR.withRoute(span, method, bestMatchingPattern.toString()); } } - return span; } public void onHandle(final AgentSpan span, final Object handler) { @@ -146,7 +145,7 @@ private String getMethodName(final Object handler) { } } - public AgentSpan onRender(final AgentSpan span, final ModelAndView mv) { + public void onRender(final AgentSpan span, final ModelAndView mv) { final String viewName = mv.getViewName(); if (viewName != null) { span.setTag("view.name", viewName); @@ -155,6 +154,5 @@ public AgentSpan onRender(final AgentSpan span, final ModelAndView mv) { if (mv.getView() != null) { span.setTag("view.type", className(mv.getView().getClass())); } - return span; } } diff --git a/dd-java-agent/instrumentation/spymemcached-2.10/src/main/java/datadog/trace/instrumentation/spymemcached/MemcacheClientDecorator.java b/dd-java-agent/instrumentation/spymemcached-2.10/src/main/java/datadog/trace/instrumentation/spymemcached/MemcacheClientDecorator.java index bcfc58674d5..6301d034c7a 100644 --- a/dd-java-agent/instrumentation/spymemcached-2.10/src/main/java/datadog/trace/instrumentation/spymemcached/MemcacheClientDecorator.java +++ b/dd-java-agent/instrumentation/spymemcached-2.10/src/main/java/datadog/trace/instrumentation/spymemcached/MemcacheClientDecorator.java @@ -59,7 +59,7 @@ protected String dbHostname(MemcachedConnection connection) { return null; } - public AgentSpan onOperation(final AgentSpan span, final String methodName) { + public void onOperation(final AgentSpan span, final String methodName) { // optimization over string.replaceFirst() StringBuilder builder = new StringBuilder(methodName); @@ -68,6 +68,5 @@ public AgentSpan onOperation(final AgentSpan span, final String methodName) { builder.replace(0, 1, String.valueOf(Character.toLowerCase(builder.charAt(0)))); span.setResourceName(builder.toString()); - return span; } } diff --git a/dd-java-agent/instrumentation/tibco-businessworks/tibco-businessworks-5.14/src/main/java/datadog/trace/instrumentation/tibcobw5/TibcoDecorator.java b/dd-java-agent/instrumentation/tibco-businessworks/tibco-businessworks-5.14/src/main/java/datadog/trace/instrumentation/tibcobw5/TibcoDecorator.java index 2c6c07c1499..a0234a7607f 100644 --- a/dd-java-agent/instrumentation/tibco-businessworks/tibco-businessworks-5.14/src/main/java/datadog/trace/instrumentation/tibcobw5/TibcoDecorator.java +++ b/dd-java-agent/instrumentation/tibco-businessworks/tibco-businessworks-5.14/src/main/java/datadog/trace/instrumentation/tibcobw5/TibcoDecorator.java @@ -57,20 +57,19 @@ protected CharSequence component() { } @Override - public AgentSpan afterStart(final AgentSpan span) { + public void afterStart(final AgentSpan span) { span.setTag(Tags.SPAN_KIND, Tags.SPAN_KIND_INTERNAL); - return super.afterStart(span); + super.afterStart(span); } - public AgentSpan onProcessStart(AgentSpan span, String processName) { - return span.setResourceName(processName) + public void onProcessStart(AgentSpan span, String processName) { + span.setResourceName(processName) .setTag(TIBCO_NODE, JobPool.getName()) .setTag(TIBCO_VERSION, VERSION) .setMeasured(true); } - public AgentSpan onActivityStart(final AgentSpan span, String activityName) { + public void onActivityStart(final AgentSpan span, String activityName) { span.setResourceName(activityName); - return span; } } diff --git a/dd-java-agent/instrumentation/tibco-businessworks/tibco-businessworks-6.5/src/main/java/datadog/trace/instrumentation/tibcobw6/TibcoDecorator.java b/dd-java-agent/instrumentation/tibco-businessworks/tibco-businessworks-6.5/src/main/java/datadog/trace/instrumentation/tibcobw6/TibcoDecorator.java index 4f788ff8fba..59987e822c4 100644 --- a/dd-java-agent/instrumentation/tibco-businessworks/tibco-businessworks-6.5/src/main/java/datadog/trace/instrumentation/tibcobw6/TibcoDecorator.java +++ b/dd-java-agent/instrumentation/tibco-businessworks/tibco-businessworks-6.5/src/main/java/datadog/trace/instrumentation/tibcobw6/TibcoDecorator.java @@ -59,20 +59,19 @@ protected CharSequence component() { } @Override - public AgentSpan afterStart(final AgentSpan span) { + public void afterStart(final AgentSpan span) { span.setTag(Tags.SPAN_KIND, Tags.SPAN_KIND_INTERNAL); - return super.afterStart(span); + super.afterStart(span); } - public AgentSpan onProcessStart(AgentSpan span, String processName) { - return span.setResourceName(processName) + public void onProcessStart(AgentSpan span, String processName) { + span.setResourceName(processName) .setTag(TIBCO_NODE, APPNODE_NAME) .setTag(TIBCO_VERSION, BW_VERSION) .setMeasured(true); } - public AgentSpan onActivityStart(final AgentSpan span, String activityName) { + public void onActivityStart(final AgentSpan span, String activityName) { span.setResourceName(activityName); - return span; } } diff --git a/dd-java-agent/instrumentation/tomcat/tomcat-common/src/main/java/datadog/trace/instrumentation/tomcat/TomcatDecorator.java b/dd-java-agent/instrumentation/tomcat/tomcat-common/src/main/java/datadog/trace/instrumentation/tomcat/TomcatDecorator.java index 0303e7cdcd4..b285eabeaf9 100644 --- a/dd-java-agent/instrumentation/tomcat/tomcat-common/src/main/java/datadog/trace/instrumentation/tomcat/TomcatDecorator.java +++ b/dd-java-agent/instrumentation/tomcat/tomcat-common/src/main/java/datadog/trace/instrumentation/tomcat/TomcatDecorator.java @@ -95,7 +95,7 @@ protected String requestedSessionId(final Request request) { } @Override - public AgentSpan onRequest( + public void onRequest( final AgentSpan span, final Request connection, final Request request, @@ -117,7 +117,7 @@ public AgentSpan onRequest( request.setAttribute(DD_CONTEXT_PATH_ATTRIBUTE, contextPath); request.setAttribute(DD_SERVLET_PATH_ATTRIBUTE, servletPath); } - return super.onRequest(span, connection, request, parentContext); + super.onRequest(span, connection, request, parentContext); } @Override @@ -126,7 +126,7 @@ protected boolean isAppSecOnResponseSeparate() { } @Override - public AgentSpan onResponse(AgentSpan span, Response response) { + public void onResponse(AgentSpan span, Response response) { Request req = response.getRequest(); if (Config.get().isServletPrincipalEnabled() && req.getUserPrincipal() != null) { span.setTag(DDTags.USER_NAME, req.getUserPrincipal().getName()); @@ -139,7 +139,7 @@ public AgentSpan onResponse(AgentSpan span, Response response) { if (throwable instanceof Throwable) { onError(span, (Throwable) throwable); } - return super.onResponse(span, response); + super.onResponse(span, response); } @Override diff --git a/dd-java-agent/instrumentation/twilio-0.0.1/src/main/java/datadog/trace/instrumentation/twilio/TwilioClientDecorator.java b/dd-java-agent/instrumentation/twilio-0.0.1/src/main/java/datadog/trace/instrumentation/twilio/TwilioClientDecorator.java index 48e89083c3b..b3865cbf1b5 100644 --- a/dd-java-agent/instrumentation/twilio-0.0.1/src/main/java/datadog/trace/instrumentation/twilio/TwilioClientDecorator.java +++ b/dd-java-agent/instrumentation/twilio-0.0.1/src/main/java/datadog/trace/instrumentation/twilio/TwilioClientDecorator.java @@ -64,14 +64,13 @@ protected String service() { } /** Decorate trace based on service execution metadata. */ - public AgentSpan onServiceExecution( + public void onServiceExecution( final AgentSpan span, final Object serviceExecutor, final String methodName) { span.setResourceName(NAMES.getQualifiedName(serviceExecutor.getClass(), methodName)); - return span; } /** Annotate the span with the results of the operation. */ - public AgentSpan onResult(final AgentSpan span, Object result) { + public void onResult(final AgentSpan span, Object result) { // Unwrap ListenableFuture (if present) if (result instanceof ListenableFuture) { @@ -84,7 +83,7 @@ public AgentSpan onResult(final AgentSpan span, Object result) { // Nothing to do here, so return if (result == null) { - return span; + return; } // Provide helpful metadata for some of the more common response types @@ -114,8 +113,6 @@ public AgentSpan onResult(final AgentSpan span, Object result) { setTagIfPresent(span, result, "twilio.account", "getAccountSid"); setTagIfPresent(span, result, "twilio.status", "getStatus"); } - - return span; } /** diff --git a/dd-java-agent/instrumentation/vertx/vertx-web/vertx-web-3.4/src/main/java/datadog/trace/instrumentation/vertx_3_4/server/VertxDecorator.java b/dd-java-agent/instrumentation/vertx/vertx-web/vertx-web-3.4/src/main/java/datadog/trace/instrumentation/vertx_3_4/server/VertxDecorator.java index 29900eb8034..fc9745da645 100644 --- a/dd-java-agent/instrumentation/vertx/vertx-web/vertx-web-3.4/src/main/java/datadog/trace/instrumentation/vertx_3_4/server/VertxDecorator.java +++ b/dd-java-agent/instrumentation/vertx/vertx-web/vertx-web-3.4/src/main/java/datadog/trace/instrumentation/vertx_3_4/server/VertxDecorator.java @@ -54,13 +54,11 @@ protected URIDataAdapter url(final RoutingContext routingContext) { } @Override - public AgentSpan onRequest( + public void onRequest( final AgentSpan span, final RoutingContext connection, final RoutingContext routingContext, - final Context parentContext) { - return span; - } + final Context parentContext) {} @Override protected String peerHostIP(final RoutingContext routingContext) { diff --git a/dd-java-agent/instrumentation/vertx/vertx-web/vertx-web-4.0/src/main/java/datadog/trace/instrumentation/vertx_4_0/server/VertxDecorator.java b/dd-java-agent/instrumentation/vertx/vertx-web/vertx-web-4.0/src/main/java/datadog/trace/instrumentation/vertx_4_0/server/VertxDecorator.java index d693e5cd70a..a4f0352e9ce 100644 --- a/dd-java-agent/instrumentation/vertx/vertx-web/vertx-web-4.0/src/main/java/datadog/trace/instrumentation/vertx_4_0/server/VertxDecorator.java +++ b/dd-java-agent/instrumentation/vertx/vertx-web/vertx-web-4.0/src/main/java/datadog/trace/instrumentation/vertx_4_0/server/VertxDecorator.java @@ -55,13 +55,11 @@ protected URIDataAdapter url(final RoutingContext routingContext) { } @Override - public AgentSpan onRequest( + public void onRequest( final AgentSpan span, final RoutingContext connection, final RoutingContext routingContext, - final Context parentContext) { - return span; - } + final Context parentContext) {} @Override protected String peerHostIP(final RoutingContext routingContext) { diff --git a/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/AsyncRemoteEndpointInstrumentation.java b/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/AsyncRemoteEndpointInstrumentation.java index 47b760ae5cd..a5549eb9f5c 100644 --- a/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/AsyncRemoteEndpointInstrumentation.java +++ b/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/AsyncRemoteEndpointInstrumentation.java @@ -96,7 +96,7 @@ public static AgentScope before( } final AgentSpan wsSpan = - DECORATE.onSendFrameStart( + DECORATE.startOutboundFrameSpan( handlerContext, CHAR_SEQUENCE_SIZE_CALCULATOR.getFormat(), CHAR_SEQUENCE_SIZE_CALCULATOR.getLengthFunction().applyAsInt(text)); @@ -153,7 +153,7 @@ public static AgentScope before( } final AgentSpan wsSpan = - DECORATE.onSendFrameStart( + DECORATE.startOutboundFrameSpan( handlerContext, BYTE_BUFFER_SIZE_CALCULATOR.getFormat(), BYTE_BUFFER_SIZE_CALCULATOR.getLengthFunction().applyAsInt(buffer)); @@ -209,7 +209,8 @@ public static AgentScope before( } final AgentSpan wsSpan = - DECORATE.onSendFrameStart(handlerContext, BYTE_BUFFER_SIZE_CALCULATOR.getFormat(), 0); + DECORATE.startOutboundFrameSpan( + handlerContext, BYTE_BUFFER_SIZE_CALCULATOR.getFormat(), 0); if (sendHandler != null) { sendHandler = new TracingSendHandler(sendHandler, handlerContext); } diff --git a/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/BasicRemoteEndpointInstrumentation.java b/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/BasicRemoteEndpointInstrumentation.java index 40850478789..86282273235 100644 --- a/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/BasicRemoteEndpointInstrumentation.java +++ b/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/BasicRemoteEndpointInstrumentation.java @@ -85,7 +85,7 @@ public static AgentScope before( } final AgentSpan wsSpan = - DECORATE.onSendFrameStart( + DECORATE.startOutboundFrameSpan( handlerContext, CHAR_SEQUENCE_SIZE_CALCULATOR.getFormat(), CHAR_SEQUENCE_SIZE_CALCULATOR.getLengthFunction().applyAsInt(text)); @@ -132,7 +132,7 @@ public static AgentScope before( } final AgentSpan wsSpan = - DECORATE.onSendFrameStart( + DECORATE.startOutboundFrameSpan( handlerContext, BYTE_BUFFER_SIZE_CALCULATOR.getFormat(), BYTE_BUFFER_SIZE_CALCULATOR.getLengthFunction().applyAsInt(buffer)); @@ -180,7 +180,7 @@ public static AgentScope before( // encoders/decoders. // we can anyway instrument also the Encoders but that would add much more complexity. // right now this is not in scope - final AgentSpan wsSpan = DECORATE.onSendFrameStart(handlerContext, null, 0); + final AgentSpan wsSpan = DECORATE.startOutboundFrameSpan(handlerContext, null, 0); return activateSpan(wsSpan); } diff --git a/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/EndpointInstrumentation.java b/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/EndpointInstrumentation.java index 21ec05b00f7..5f475eb82cc 100644 --- a/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/EndpointInstrumentation.java +++ b/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/EndpointInstrumentation.java @@ -89,7 +89,7 @@ public static AgentScope onEnter( new HandlerContext.Receiver(sessionState.getHandshakeSpan(), session.getId()); return activateSpan( - DECORATE.onSessionCloseReceived( + DECORATE.startInboundCloseSpan( handlerContext, closeReason.getReasonPhrase(), closeReason.getCloseCode().getCode())); } diff --git a/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/MessageHandlerInstrumentation.java b/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/MessageHandlerInstrumentation.java index 6d1c93d4cf6..8088fd750af 100644 --- a/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/MessageHandlerInstrumentation.java +++ b/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/MessageHandlerInstrumentation.java @@ -67,7 +67,7 @@ public static AgentScope onEnter( } final AgentSpan wsSpan = - DECORATE.onReceiveFrameStart(handlerContext, data, last != null && last); + DECORATE.startInboundFrameSpan(handlerContext, data, last != null && last); return activateSpan(wsSpan); } diff --git a/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/SessionInstrumentation.java b/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/SessionInstrumentation.java index 4c1c5bb8f41..4bd628bc23f 100644 --- a/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/SessionInstrumentation.java +++ b/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/SessionInstrumentation.java @@ -157,7 +157,7 @@ public static AgentScope before( return null; } return activateSpan( - DECORATE.onSessionCloseIssued( + DECORATE.startOutboundCloseSpan( handlerContext, reason.getReasonPhrase(), reason.getCloseCode().getCode())); } @@ -185,7 +185,7 @@ public static AgentScope before( if (handlerContext == null) { return null; } - return activateSpan(DECORATE.onSessionCloseIssued(handlerContext, null, 1000)); + return activateSpan(DECORATE.startOutboundCloseSpan(handlerContext, null, 1000)); } @Advice.OnMethodExit(suppress = Throwable.class, onThrowable = Throwable.class) diff --git a/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/TracingOutputStream.java b/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/TracingOutputStream.java index 83b5de0ea20..7ae4d5416c0 100644 --- a/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/TracingOutputStream.java +++ b/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/TracingOutputStream.java @@ -24,7 +24,7 @@ public TracingOutputStream(OutputStream delegate, HandlerContext.Sender handlerC public void write(int b) throws IOException { final boolean doTrace = CallDepthThreadLocalMap.incrementCallDepth(HandlerContext.class) == 0; if (doTrace) { - DECORATE.onSendFrameStart(handlerContext, MESSAGE_TYPE_BINARY, 1); + DECORATE.startOutboundFrameSpan(handlerContext, MESSAGE_TYPE_BINARY, 1); } try (final ContextScope ignored = activateSpan(handlerContext.getWebsocketSpan())) { delegate.write(b); @@ -39,7 +39,7 @@ public void write(int b) throws IOException { public void write(byte[] b, int off, int len) throws IOException { final boolean doTrace = CallDepthThreadLocalMap.incrementCallDepth(HandlerContext.class) == 0; if (doTrace) { - DECORATE.onSendFrameStart(handlerContext, MESSAGE_TYPE_BINARY, len); + DECORATE.startOutboundFrameSpan(handlerContext, MESSAGE_TYPE_BINARY, len); } try (final ContextScope ignored = activateSpan(handlerContext.getWebsocketSpan())) { delegate.write(b, off, len); diff --git a/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/TracingWriter.java b/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/TracingWriter.java index 075637763df..32f0fd236d0 100644 --- a/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/TracingWriter.java +++ b/dd-java-agent/instrumentation/websocket/javax-websocket-1.0/src/main/java/datadog/trace/instrumentation/websocket/jsr256/TracingWriter.java @@ -24,7 +24,7 @@ public TracingWriter(Writer delegate, HandlerContext.Sender handlerContext) { public void write(char[] cbuf, int off, int len) throws IOException { final boolean doTrace = CallDepthThreadLocalMap.incrementCallDepth(HandlerContext.class) == 0; if (doTrace) { - DECORATE.onSendFrameStart(handlerContext, MESSAGE_TYPE_TEXT, len); + DECORATE.startOutboundFrameSpan(handlerContext, MESSAGE_TYPE_TEXT, len); } try (final ContextScope ignored = activateSpan(handlerContext.getWebsocketSpan())) { delegate.write(cbuf, off, len); diff --git a/dd-java-agent/instrumentation/websocket/jetty-websocket/jetty-websocket-10.0/src/main/java11/datadog/trace/instrumentation/websocket/jetty10/MethodHandleWrappers.java b/dd-java-agent/instrumentation/websocket/jetty-websocket/jetty-websocket-10.0/src/main/java11/datadog/trace/instrumentation/websocket/jetty10/MethodHandleWrappers.java index c1af95f1cdd..982330b6805 100644 --- a/dd-java-agent/instrumentation/websocket/jetty-websocket/jetty-websocket-10.0/src/main/java11/datadog/trace/instrumentation/websocket/jetty10/MethodHandleWrappers.java +++ b/dd-java-agent/instrumentation/websocket/jetty-websocket/jetty-websocket-10.0/src/main/java11/datadog/trace/instrumentation/websocket/jetty10/MethodHandleWrappers.java @@ -119,7 +119,7 @@ public static void onClose( new HandlerContext.Receiver(handlerContext.getHandshakeSpan(), session.getId()); try (ContextScope ignored = activateSpan( - DECORATE.onSessionCloseReceived( + DECORATE.startInboundCloseSpan( closeContext, closeReason.getReasonPhrase(), closeReason.getCloseCode().getCode()))) { @@ -157,7 +157,7 @@ public static Object onMessage( if (partialDelivery) { finishSpan = (boolean) args[1]; } - wsSpan = DECORATE.onReceiveFrameStart(handlerContext, args[0], partialDelivery); + wsSpan = DECORATE.startInboundFrameSpan(handlerContext, args[0], partialDelivery); } } catch (Throwable t) { ExceptionLogger.LOGGER.debug("Unforeseen error instrumenting jetty websocket POJO", t);