AsyncHttpClient: extract net attributes from InetSocketAddress (#3882)

This commit is contained in:
Lauri Tulmin 2021-08-20 19:34:15 +03:00 committed by GitHub
parent 8200319d2a
commit 8d90462a28
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 7 additions and 14 deletions

View File

@ -5,14 +5,15 @@
package io.opentelemetry.javaagent.instrumentation.asynchttpclient.v2_0;
import io.opentelemetry.instrumentation.api.instrumenter.net.NetAttributesExtractor;
import io.opentelemetry.instrumentation.api.instrumenter.net.InetSocketAddressNetAttributesExtractor;
import io.opentelemetry.semconv.trace.attributes.SemanticAttributes;
import java.net.InetSocketAddress;
import org.asynchttpclient.Request;
import org.asynchttpclient.Response;
import org.checkerframework.checker.nullness.qual.Nullable;
final class AsyncHttpClientNetAttributesExtractor
extends NetAttributesExtractor<Request, Response> {
extends InetSocketAddressNetAttributesExtractor<Request, Response> {
@Override
public String transport(Request request) {
@ -20,18 +21,10 @@ final class AsyncHttpClientNetAttributesExtractor
}
@Override
public String peerName(Request request, @Nullable Response response) {
return request.getUri().getHost();
}
@Override
public Integer peerPort(Request request, @Nullable Response response) {
return request.getUri().getPort();
}
@Override
@Nullable
public String peerIp(Request request, @Nullable Response response) {
public @Nullable InetSocketAddress getAddress(Request request, @Nullable Response response) {
if (response != null && response.getRemoteAddress() instanceof InetSocketAddress) {
return (InetSocketAddress) response.getRemoteAddress();
}
return null;
}
}