Skip to content

Commit 5d3d12e

Browse files
lauritSylvainJuge
andauthored
Catch exception when reactor netty response is not available (#14778)
Co-authored-by: SylvainJuge <[email protected]>
1 parent 2414a63 commit 5d3d12e

File tree

1 file changed

+21
-3
lines changed

1 file changed

+21
-3
lines changed

instrumentation/reactor/reactor-netty/reactor-netty-1.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/reactornetty/v1_0/ReactorNettyHttpClientAttributesGetter.java

Lines changed: 21 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55

66
package io.opentelemetry.javaagent.instrumentation.reactornetty.v1_0;
77

8+
import static java.util.Collections.emptyList;
9+
810
import io.netty.handler.codec.http.HttpVersion;
911
import io.opentelemetry.instrumentation.api.semconv.http.HttpClientAttributesGetter;
1012
import java.net.InetSocketAddress;
@@ -30,19 +32,35 @@ public String getHttpRequestMethod(HttpClientRequest request) {
3032

3133
@Override
3234
public List<String> getHttpRequestHeader(HttpClientRequest request, String name) {
33-
return request.requestHeaders().getAll(name);
35+
try {
36+
return request.requestHeaders().getAll(name);
37+
} catch (IllegalStateException exception) {
38+
// response not available
39+
return emptyList();
40+
}
3441
}
3542

43+
@Nullable
3644
@Override
3745
public Integer getHttpResponseStatusCode(
3846
HttpClientRequest request, HttpClientResponse response, @Nullable Throwable error) {
39-
return response.status().code();
47+
try {
48+
return response.status().code();
49+
} catch (IllegalStateException exception) {
50+
// response not available
51+
return null;
52+
}
4053
}
4154

4255
@Override
4356
public List<String> getHttpResponseHeader(
4457
HttpClientRequest request, HttpClientResponse response, String name) {
45-
return response.responseHeaders().getAll(name);
58+
try {
59+
return response.responseHeaders().getAll(name);
60+
} catch (IllegalStateException exception) {
61+
// response not available
62+
return emptyList();
63+
}
4664
}
4765

4866
@Nullable

0 commit comments

Comments
 (0)