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/OnInboundNextInterceptor.java b/apm-sniffer/apm-sdk-plugin/spring-plugins/webflux-5.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/spring/webflux/v5/OnInboundNextInterceptor.java index e6031f7bad02..fd279fe21649 100644 --- a/apm-sniffer/apm-sdk-plugin/spring-plugins/webflux-5.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/spring/webflux/v5/OnInboundNextInterceptor.java +++ b/apm-sniffer/apm-sdk-plugin/spring-plugins/webflux-5.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/spring/webflux/v5/OnInboundNextInterceptor.java @@ -46,7 +46,7 @@ public void beforeMethod(EnhancedInstance objInst, Method method, Object[] allAr } if (allArguments[1] instanceof HttpRequest) { - AbstractSpan span = ContextManager.createEntrySpan(request.uri(), contextCarrier); + AbstractSpan span = ContextManager.createEntrySpan(toPath(request.uri()), contextCarrier); Tags.URL.set(span, request.uri()); Tags.HTTP.METHOD.set(span, request.method().name()); span.setComponent(ComponentsDefine.SPRING_MVC_ANNOTATION); @@ -65,4 +65,13 @@ public Object afterMethod(EnhancedInstance objInst, Method method, Object[] allA Class[] argumentsTypes, Throwable t) { ContextManager.activeSpan().errorOccurred().log(t); } + + private static String toPath(String uri) { + int index = uri.indexOf("?"); + if (index > -1) { + return uri.substring(0, index); + } else { + return uri; + } + } } diff --git a/apm-sniffer/apm-sdk-plugin/vertx-plugins/vertx-core-3.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/vertx3/HttpClientRequestImplEndInterceptor.java b/apm-sniffer/apm-sdk-plugin/vertx-plugins/vertx-core-3.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/vertx3/HttpClientRequestImplEndInterceptor.java index 55a75f39a1b4..229468ed42f6 100644 --- a/apm-sniffer/apm-sdk-plugin/vertx-plugins/vertx-core-3.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/vertx3/HttpClientRequestImplEndInterceptor.java +++ b/apm-sniffer/apm-sdk-plugin/vertx-plugins/vertx-core-3.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/vertx3/HttpClientRequestImplEndInterceptor.java @@ -86,8 +86,9 @@ public Object afterMethod(EnhancedInstance objInst, Method method, Object[] allA } private static String toPath(String uri) { - if (uri.contains("?")) { - return uri.substring(0, uri.indexOf("?")); + int index = uri.indexOf("?"); + if (index > -1) { + return uri.substring(0, index); } else { return uri; } diff --git a/apm-sniffer/apm-sdk-plugin/vertx-plugins/vertx-core-3.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/vertx3/RouterImplAcceptInterceptor.java b/apm-sniffer/apm-sdk-plugin/vertx-plugins/vertx-core-3.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/vertx3/RouterImplAcceptInterceptor.java index a534c30a3271..f063a6a7c4d7 100644 --- a/apm-sniffer/apm-sdk-plugin/vertx-plugins/vertx-core-3.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/vertx3/RouterImplAcceptInterceptor.java +++ b/apm-sniffer/apm-sdk-plugin/vertx-plugins/vertx-core-3.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/vertx3/RouterImplAcceptInterceptor.java @@ -73,8 +73,9 @@ public Object afterMethod(EnhancedInstance objInst, Method method, Object[] allA } private static String toPath(String uri) { - if (uri.contains("?")) { - return uri.substring(0, uri.indexOf("?")); + int index = uri.indexOf("?"); + if (index > -1) { + return uri.substring(0, index); } else { return uri; }