Skip to content

Commit 8fdd1d5

Browse files
breedx-splklaurit
andauthored
Fix khttp client instrumentation (#2705)
* port is required now, so default back to scheme if needed. * simplify --------- Co-authored-by: Lauri Tulmin <ltulmin@splunk.com>
1 parent 349326b commit 8fdd1d5

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

instrumentation/khttp/src/main/java/com/splunk/opentelemetry/instrumentation/khttp/KHttpHttpClientHttpAttributesGetter.java

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,9 @@
1919
import static java.util.Collections.emptyList;
2020
import static java.util.Collections.singletonList;
2121

22+
import io.opentelemetry.instrumentation.api.internal.HttpConstants;
2223
import io.opentelemetry.instrumentation.api.semconv.http.HttpClientAttributesGetter;
24+
import java.net.URI;
2325
import java.util.List;
2426
import java.util.Map;
2527
import java.util.stream.Collectors;
@@ -74,10 +76,10 @@ public String getServerAddress(RequestWrapper requestWrapper) {
7476
@Nullable
7577
@Override
7678
public Integer getServerPort(RequestWrapper requestWrapper) {
77-
if (requestWrapper.parsedUri != null && requestWrapper.parsedUri.getPort() > 0) {
78-
return requestWrapper.parsedUri.getPort();
79-
}
80-
return null;
79+
URI uri = requestWrapper.parsedUri;
80+
return uri != null
81+
? HttpConstants.portOrDefaultFromScheme(uri.getPort(), uri.getScheme())
82+
: null;
8183
}
8284

8385
@Nullable

0 commit comments

Comments
 (0)