diff --git a/apm-sniffer/apm-sdk-plugin/spring-plugins/webflux-5.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/spring/webflux/v5/AbstractServerResponseMethodInterceptor.java b/apm-sniffer/apm-sdk-plugin/spring-plugins/webflux-5.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/spring/webflux/v5/AbstractServerResponseMethodInterceptor.java index 04f21843c3f6cc75c975bfdcb2c150af207bc2ac..13162c70f4dc24356bc898fcb7f968abcb94ed18 100644 --- a/apm-sniffer/apm-sdk-plugin/spring-plugins/webflux-5.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/spring/webflux/v5/AbstractServerResponseMethodInterceptor.java +++ b/apm-sniffer/apm-sdk-plugin/spring-plugins/webflux-5.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/spring/webflux/v5/AbstractServerResponseMethodInterceptor.java @@ -58,7 +58,11 @@ public class AbstractServerResponseMethodInterceptor implements InstanceMethodsA } Tags.STATUS_CODE.set(span, Integer.toString(status.value())); } - ContextManager.stopSpan(span); + if (ContextManager.isActive()) { + ContextManager.stopSpan(span); + } else { + span.asyncFinish(); + } ((EnhancedInstance) allArguments[0]).setSkyWalkingDynamicField(null); } }