diff --git a/apm-sniffer/apm-sdk-plugin/dubbo-2.7.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/asf/dubbo/DubboInterceptor.java b/apm-sniffer/apm-sdk-plugin/dubbo-2.7.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/asf/dubbo/DubboInterceptor.java index 616717999b2cb57e71952bd5cb99c6f459f7bfe0..41fce7007371a648a80e3e98e73082b4c0af89e8 100644 --- a/apm-sniffer/apm-sdk-plugin/dubbo-2.7.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/asf/dubbo/DubboInterceptor.java +++ b/apm-sniffer/apm-sdk-plugin/dubbo-2.7.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/asf/dubbo/DubboInterceptor.java @@ -72,6 +72,9 @@ public class DubboInterceptor implements InstanceMethodsAroundInterceptor { while (next.hasNext()) { next = next.next(); rpcContext.getAttachments().put(next.getHeadKey(), next.getHeadValue()); + if (invocation.getAttachments().containsKey(next.getHeadKey())) { + invocation.getAttachments().remove(next.getHeadKey()); + } } } else { ContextCarrier contextCarrier = new ContextCarrier(); diff --git a/apm-sniffer/apm-sdk-plugin/dubbo-plugin/src/main/java/org/apache/skywalking/apm/plugin/dubbo/DubboInterceptor.java b/apm-sniffer/apm-sdk-plugin/dubbo-plugin/src/main/java/org/apache/skywalking/apm/plugin/dubbo/DubboInterceptor.java index 994bc89660c2afed8799486676723a69b16e7c0a..92147f7b05f60b48afb1a95a7713b065b7cb52da 100644 --- a/apm-sniffer/apm-sdk-plugin/dubbo-plugin/src/main/java/org/apache/skywalking/apm/plugin/dubbo/DubboInterceptor.java +++ b/apm-sniffer/apm-sdk-plugin/dubbo-plugin/src/main/java/org/apache/skywalking/apm/plugin/dubbo/DubboInterceptor.java @@ -73,6 +73,9 @@ public class DubboInterceptor implements InstanceMethodsAroundInterceptor { while (next.hasNext()) { next = next.next(); rpcContext.getAttachments().put(next.getHeadKey(), next.getHeadValue()); + if (invocation.getAttachments().containsKey(next.getHeadKey())) { + invocation.getAttachments().remove(next.getHeadKey()); + } } } else { ContextCarrier contextCarrier = new ContextCarrier();