Skip to content

Commit dc25f08

Browse files
committed
Refine Spring messaging Kotlin handler instrumentation
1 parent 7e0822f commit dc25f08

2 files changed

Lines changed: 5 additions & 11 deletions

File tree

dd-java-agent/instrumentation/spring/spring-messaging-4.0/src/main/java/datadog/trace/instrumentation/springmessaging/KotlinAwareHandlerInstrumentation.java

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99
import datadog.trace.agent.tooling.InstrumenterModule;
1010
import datadog.trace.bootstrap.InstrumentationContext;
1111
import java.util.Collections;
12-
import java.util.List;
1312
import java.util.Map;
1413
import net.bytebuddy.asm.Advice;
1514
import org.reactivestreams.Publisher;
@@ -34,19 +33,14 @@ public class KotlinAwareHandlerInstrumentation extends InstrumenterModule.Tracin
3433
implements Instrumenter.ForSingleType, Instrumenter.HasMethodAdvice {
3534

3635
public KotlinAwareHandlerInstrumentation() {
37-
super("spring-messaging", "spring-messaging-4");
36+
super("spring-messaging", "spring-messaging-4", "spring-messaging-kotlin");
3837
}
3938

4039
@Override
4140
public Map<String, String> contextStore() {
4241
return Collections.singletonMap("org.reactivestreams.Publisher", Context.class.getName());
4342
}
4443

45-
@Override
46-
public List<Instrumenter> typeInstrumentations() {
47-
return Collections.singletonList(new KotlinAwareHandlerInstrumentation());
48-
}
49-
5044
@Override
5145
public String instrumentedType() {
5246
return "org.springframework.kafka.listener.adapter.KotlinAwareInvocableHandlerMethod";
@@ -60,6 +54,7 @@ public void methodAdvice(MethodTransformer transformer) {
6054
}
6155

6256
public static class DoInvokeAdvice {
57+
6358
@Advice.OnMethodExit(suppress = Throwable.class)
6459
public static void onExit(@Advice.Return Object result) {
6560
if (result instanceof Publisher) {

dd-java-agent/instrumentation/spring/spring-messaging-4.0/src/main/java/datadog/trace/instrumentation/springmessaging/SpringMessageHandlerInstrumentation.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -54,12 +54,13 @@ public String[] helperClassNames() {
5454
return new String[] {
5555
packageName + ".SpringMessageDecorator",
5656
packageName + ".SpringMessageExtractAdapter",
57-
packageName + ".SpringMessageExtractAdapter$1"
57+
packageName + ".SpringMessageExtractAdapter$1",
5858
};
5959
}
6060

6161
@AppliesOn(CONTEXT_TRACKING)
6262
public static class ContextPropagationAdvice {
63+
6364
@Advice.OnMethodEnter(suppress = Throwable.class)
6465
public static void onEnter(
6566
@Advice.Argument(0) Message<?> message, @Advice.Local("ctxScope") ContextScope scope) {
@@ -76,6 +77,7 @@ public static void onExit(@Advice.Local("ctxScope") ContextScope scope) {
7677
}
7778

7879
public static class HandleMessageAdvice {
80+
7981
@Advice.OnMethodEnter(suppress = Throwable.class)
8082
public static AgentScope onEnter(@Advice.This InvocableHandlerMethod thiz) {
8183
AgentSpan span = startSpan(SPRING_INBOUND);
@@ -106,9 +108,6 @@ public static void onExit(
106108
return;
107109
}
108110
}
109-
if (null != error) {
110-
DECORATE.onError(span, error);
111-
}
112111
DECORATE.beforeFinish(span);
113112
span.finish();
114113
}

0 commit comments

Comments
 (0)