Skip to content

Commit 00b52a9

Browse files
lauritnilsga
andauthored
Cherry pick #9990 (#10204)
Co-authored-by: Nils-Helge Garli Hegvik <[email protected]>
1 parent df10cf0 commit 00b52a9

File tree

2 files changed

+28
-3
lines changed
  • instrumentation/apache-httpclient/apache-httpclient-5.0/javaagent/src

2 files changed

+28
-3
lines changed

instrumentation/apache-httpclient/apache-httpclient-5.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/apachehttpclient/v5_0/RequestWithHost.java

+7-3
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,13 @@ public class RequestWithHost extends HttpRequestWrapper implements ClassicHttpRe
1919

2020
public RequestWithHost(HttpHost httpHost, ClassicHttpRequest httpRequest) {
2121
super(httpRequest);
22-
23-
this.scheme = httpHost.getSchemeName();
24-
this.authority = new URIAuthority(httpHost.getHostName(), httpHost.getPort());
22+
if (httpHost != null) {
23+
this.scheme = httpHost.getSchemeName();
24+
this.authority = new URIAuthority(httpHost.getHostName(), httpHost.getPort());
25+
} else {
26+
this.scheme = httpRequest.getScheme();
27+
this.authority = httpRequest.getAuthority();
28+
}
2529
}
2630

2731
@Override

instrumentation/apache-httpclient/apache-httpclient-5.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/apachehttpclient/v5_0/ApacheHttpClientTest.java

+21
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
import org.apache.hc.client5.http.impl.classic.HttpClients;
2121
import org.apache.hc.core5.http.ClassicHttpRequest;
2222
import org.apache.hc.core5.http.ClassicHttpResponse;
23+
import org.apache.hc.core5.http.HttpHost;
2324
import org.apache.hc.core5.http.HttpResponse;
2425
import org.apache.hc.core5.http.io.HttpClientResponseHandler;
2526
import org.apache.hc.core5.http.message.BasicClassicHttpRequest;
@@ -90,6 +91,26 @@ void executeRequestWithCallback(ClassicHttpRequest request, URI uri, HttpClientR
9091
}
9192
}
9293

94+
@Nested
95+
class ApacheClientNullHttpHostRequestTest extends AbstractTest {
96+
@Override
97+
ClassicHttpRequest createRequest(String method, URI uri) {
98+
// also testing with an absolute path below
99+
return new BasicClassicHttpRequest(method, HttpHost.create(uri), fullPathFromUri(uri));
100+
}
101+
102+
@Override
103+
ClassicHttpResponse doExecuteRequest(ClassicHttpRequest request, URI uri) throws Exception {
104+
return getClient(uri).execute(null, request);
105+
}
106+
107+
@Override
108+
void executeRequestWithCallback(ClassicHttpRequest request, URI uri, HttpClientResult result)
109+
throws Exception {
110+
getClient(uri).execute(null, request, new ResponseHandler(result));
111+
}
112+
}
113+
93114
@Nested
94115
class ApacheClientHostAbsoluteUriRequestTest extends AbstractTest {
95116
@Override

0 commit comments

Comments
 (0)