Skip to content

Commit 55aa9c5

Browse files
committed
(chore) cleanup from review
1 parent 948e5ba commit 55aa9c5

File tree

12 files changed

+88
-163
lines changed

12 files changed

+88
-163
lines changed

instrumentation/ratpack/ratpack-1.4/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/ratpack/RatpackForkedHttpClientTest.java

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -5,29 +5,14 @@
55

66
package io.opentelemetry.javaagent.instrumentation.ratpack;
77

8-
import static io.opentelemetry.semconv.ServerAttributes.SERVER_ADDRESS;
9-
import static io.opentelemetry.semconv.ServerAttributes.SERVER_PORT;
10-
11-
import io.opentelemetry.api.common.AttributeKey;
128
import io.opentelemetry.instrumentation.ratpack.client.AbstractRatpackForkedHttpClientTest;
139
import io.opentelemetry.instrumentation.testing.junit.InstrumentationExtension;
1410
import io.opentelemetry.instrumentation.testing.junit.http.HttpClientInstrumentationExtension;
15-
import java.net.URI;
16-
import java.util.HashSet;
17-
import java.util.Set;
1811
import org.junit.jupiter.api.extension.RegisterExtension;
1912

2013
class RatpackForkedHttpClientTest extends AbstractRatpackForkedHttpClientTest {
2114

2215
@RegisterExtension
2316
static final InstrumentationExtension testing = HttpClientInstrumentationExtension.forAgent();
2417

25-
@Override
26-
protected Set<AttributeKey<?>> computeHttpAttributes(URI uri) {
27-
Set<AttributeKey<?>> attributes = new HashSet<>(super.computeHttpAttributes(uri));
28-
// underlying netty instrumentation does not provide these
29-
attributes.remove(SERVER_ADDRESS);
30-
attributes.remove(SERVER_PORT);
31-
return attributes;
32-
}
3318
}

instrumentation/ratpack/ratpack-1.4/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/ratpack/RatpackHttpClientTest.java

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -5,29 +5,14 @@
55

66
package io.opentelemetry.javaagent.instrumentation.ratpack;
77

8-
import static io.opentelemetry.semconv.ServerAttributes.SERVER_ADDRESS;
9-
import static io.opentelemetry.semconv.ServerAttributes.SERVER_PORT;
10-
11-
import io.opentelemetry.api.common.AttributeKey;
128
import io.opentelemetry.instrumentation.ratpack.client.AbstractRatpackHttpClientTest;
139
import io.opentelemetry.instrumentation.testing.junit.InstrumentationExtension;
1410
import io.opentelemetry.instrumentation.testing.junit.http.HttpClientInstrumentationExtension;
15-
import java.net.URI;
16-
import java.util.HashSet;
17-
import java.util.Set;
1811
import org.junit.jupiter.api.extension.RegisterExtension;
1912

2013
class RatpackHttpClientTest extends AbstractRatpackHttpClientTest {
2114

2215
@RegisterExtension
2316
static final InstrumentationExtension testing = HttpClientInstrumentationExtension.forAgent();
2417

25-
@Override
26-
protected Set<AttributeKey<?>> computeHttpAttributes(URI uri) {
27-
Set<AttributeKey<?>> attributes = new HashSet<>(super.computeHttpAttributes(uri));
28-
// underlying netty instrumentation does not provide these
29-
attributes.remove(SERVER_ADDRESS);
30-
attributes.remove(SERVER_PORT);
31-
return attributes;
32-
}
3318
}

instrumentation/ratpack/ratpack-1.4/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/ratpack/RatpackPooledHttpClientTest.java

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -5,29 +5,14 @@
55

66
package io.opentelemetry.javaagent.instrumentation.ratpack;
77

8-
import static io.opentelemetry.semconv.ServerAttributes.SERVER_ADDRESS;
9-
import static io.opentelemetry.semconv.ServerAttributes.SERVER_PORT;
10-
11-
import io.opentelemetry.api.common.AttributeKey;
128
import io.opentelemetry.instrumentation.ratpack.client.AbstractRatpackPooledHttpClientTest;
139
import io.opentelemetry.instrumentation.testing.junit.InstrumentationExtension;
1410
import io.opentelemetry.instrumentation.testing.junit.http.HttpClientInstrumentationExtension;
15-
import java.net.URI;
16-
import java.util.HashSet;
17-
import java.util.Set;
1811
import org.junit.jupiter.api.extension.RegisterExtension;
1912

2013
class RatpackPooledHttpClientTest extends AbstractRatpackPooledHttpClientTest {
2114

2215
@RegisterExtension
2316
static final InstrumentationExtension testing = HttpClientInstrumentationExtension.forAgent();
2417

25-
@Override
26-
protected Set<AttributeKey<?>> computeHttpAttributes(URI uri) {
27-
Set<AttributeKey<?>> attributes = new HashSet<>(super.computeHttpAttributes(uri));
28-
// underlying netty instrumentation does not provide these
29-
attributes.remove(SERVER_ADDRESS);
30-
attributes.remove(SERVER_PORT);
31-
return attributes;
32-
}
3318
}

instrumentation/ratpack/ratpack-1.4/testing/src/main/java/io/opentelemetry/instrumentation/ratpack/client/AbstractRatpackHttpClientTest.java

Lines changed: 49 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,20 @@
55

66
package io.opentelemetry.instrumentation.ratpack.client;
77

8+
import static io.opentelemetry.semconv.ServerAttributes.SERVER_ADDRESS;
9+
import static io.opentelemetry.semconv.ServerAttributes.SERVER_PORT;
10+
811
import io.netty.channel.ConnectTimeoutException;
912
import io.netty.handler.timeout.ReadTimeoutException;
1013
import io.opentelemetry.api.common.AttributeKey;
1114
import io.opentelemetry.instrumentation.testing.junit.http.AbstractHttpClientTest;
1215
import io.opentelemetry.instrumentation.testing.junit.http.HttpClientResult;
1316
import io.opentelemetry.instrumentation.testing.junit.http.HttpClientTestOptions;
17+
import io.opentelemetry.semconv.NetworkAttributes;
1418
import java.net.URI;
1519
import java.time.Duration;
1620
import java.util.Collections;
21+
import java.util.HashSet;
1722
import java.util.Map;
1823
import java.util.Set;
1924
import org.junit.jupiter.api.AfterAll;
@@ -122,32 +127,13 @@ protected void configure(HttpClientTestOptions.Builder optionsBuilder) {
122127
.getValueOrThrow();
123128
});
124129

125-
optionsBuilder.setExpectedClientSpanNameMapper(
126-
(uri, method) -> {
127-
switch (uri.toString()) {
128-
case "http://localhost:61/": // unopened port
129-
case "https://192.0.2.1/": // non routable address
130-
return "CONNECT";
131-
default:
132-
return HttpClientTestOptions.DEFAULT_EXPECTED_CLIENT_SPAN_NAME_MAPPER.apply(
133-
uri, method);
134-
}
135-
});
130+
if (useNettyClientAttributes()) {
131+
optionsBuilder.setExpectedClientSpanNameMapper(
132+
AbstractRatpackHttpClientTest::nettyExpectedClientSpanNameMapper);
133+
}
136134

137135
optionsBuilder.setClientSpanErrorMapper(
138-
(uri, exception) -> {
139-
if (uri.toString().equals("https://192.0.2.1/")) {
140-
return new ConnectTimeoutException(
141-
"connection timed out"
142-
+ (Boolean.getBoolean("testLatestDeps") ? " after 2000 ms" : "")
143-
+ ": /192.0.2.1:443");
144-
} else if (OS.WINDOWS.isCurrentOs() && uri.toString().equals("http://localhost:61/")) {
145-
return new ConnectTimeoutException("connection timed out: localhost/127.0.0.1:61");
146-
} else if (uri.getPath().equals("/read-timeout")) {
147-
return ReadTimeoutException.INSTANCE;
148-
}
149-
return exception;
150-
});
136+
AbstractRatpackHttpClientTest::nettyClientSpanErrorMapper);
151137

152138
optionsBuilder.setHttpAttributes(this::computeHttpAttributes);
153139

@@ -164,7 +150,45 @@ protected Set<AttributeKey<?>> computeHttpAttributes(URI uri) {
164150
case "https://192.0.2.1/": // non routable address
165151
return Collections.emptySet();
166152
default:
167-
return HttpClientTestOptions.DEFAULT_HTTP_ATTRIBUTES;
153+
HashSet<AttributeKey<?>> attributes =
154+
new HashSet<>(HttpClientTestOptions.DEFAULT_HTTP_ATTRIBUTES);
155+
if (useNettyClientAttributes()) {
156+
// underlying netty instrumentation does not provide these
157+
attributes.remove(SERVER_ADDRESS);
158+
attributes.remove(SERVER_PORT);
159+
} else {
160+
// ratpack client instrumentation does not provide this
161+
attributes.remove(NetworkAttributes.NETWORK_PROTOCOL_VERSION);
162+
}
163+
return attributes;
164+
}
165+
}
166+
167+
protected boolean useNettyClientAttributes() {
168+
return true;
169+
}
170+
171+
private static Throwable nettyClientSpanErrorMapper(URI uri, Throwable exception) {
172+
if (uri.toString().equals("https://192.0.2.1/")) {
173+
return new ConnectTimeoutException(
174+
"connection timed out"
175+
+ (Boolean.getBoolean("testLatestDeps") ? " after 2000 ms" : "")
176+
+ ": /192.0.2.1:443");
177+
} else if (OS.WINDOWS.isCurrentOs() && uri.toString().equals("http://localhost:61/")) {
178+
return new ConnectTimeoutException("connection timed out: localhost/127.0.0.1:61");
179+
} else if (uri.getPath().equals("/read-timeout")) {
180+
return ReadTimeoutException.INSTANCE;
181+
}
182+
return exception;
183+
}
184+
185+
private static String nettyExpectedClientSpanNameMapper(URI uri, String method) {
186+
switch (uri.toString()) {
187+
case "http://localhost:61/": // unopened port
188+
case "https://192.0.2.1/": // non routable address
189+
return "CONNECT";
190+
default:
191+
return HttpClientTestOptions.DEFAULT_EXPECTED_CLIENT_SPAN_NAME_MAPPER.apply(uri, method);
168192
}
169193
}
170194
}

instrumentation/ratpack/ratpack-1.7/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/ratpack/v1_7/RatpackSingletons.java

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,7 @@
1111
import io.opentelemetry.instrumentation.netty.v4_1.internal.AttributeKeys;
1212
import io.opentelemetry.instrumentation.ratpack.v1_7.internal.ContextHolder;
1313
import io.opentelemetry.instrumentation.ratpack.v1_7.internal.OpenTelemetryHttpClient;
14-
import io.opentelemetry.instrumentation.ratpack.v1_7.internal.OpenTelemetryServerHandler;
1514
import io.opentelemetry.instrumentation.ratpack.v1_7.internal.RatpackClientInstrumenterBuilderFactory;
16-
import io.opentelemetry.instrumentation.ratpack.v1_7.internal.RatpackServerInstrumenterBuilderFactory;
1715
import io.opentelemetry.javaagent.bootstrap.internal.AgentCommonConfig;
1816
import ratpack.exec.Execution;
1917

@@ -26,25 +24,14 @@ public final class RatpackSingletons {
2624
"io.opentelemetry.ratpack-1.7", GlobalOpenTelemetry.get())
2725
.configure(AgentCommonConfig.get())
2826
.build());
29-
SERVER_HANDLER =
30-
new OpenTelemetryServerHandler(
31-
RatpackServerInstrumenterBuilderFactory.create(
32-
"io.opentelemetry.ratpack-1.7", GlobalOpenTelemetry.get())
33-
.configure(AgentCommonConfig.get())
34-
.build());
3527
}
3628

3729
private static final OpenTelemetryHttpClient HTTP_CLIENT;
38-
private static final OpenTelemetryServerHandler SERVER_HANDLER;
3930

4031
public static OpenTelemetryHttpClient httpClient() {
4132
return HTTP_CLIENT;
4233
}
4334

44-
public static OpenTelemetryServerHandler serverHandler() {
45-
return SERVER_HANDLER;
46-
}
47-
4835
public static void propagateContextToChannel(Execution execution, Channel channel) {
4936
Context parentContext =
5037
execution

instrumentation/ratpack/ratpack-1.7/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/ratpack/v1_7/RequestActionSupportInstrumentation.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ public static class ContextAdvice {
7777
public static Scope injectChannelAttribute(
7878
@Advice.FieldValue("execution") Execution execution) {
7979

80-
// Capture the CLIENT span and make it current before cally Netty layer
80+
// Capture the CLIENT span and make it current before calling Netty layer
8181
return execution
8282
.maybeGet(ContextHolder.class)
8383
.map(ContextHolder::context)

instrumentation/ratpack/ratpack-1.7/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/ratpack/v1_7/RatpackForkedHttpClientTest.java

Lines changed: 3 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -5,48 +5,25 @@
55

66
package io.opentelemetry.javaagent.instrumentation.ratpack.v1_7;
77

8-
import io.netty.channel.ConnectTimeoutException;
9-
import io.opentelemetry.api.common.AttributeKey;
108
import io.opentelemetry.instrumentation.ratpack.client.AbstractRatpackForkedHttpClientTest;
119
import io.opentelemetry.instrumentation.testing.junit.InstrumentationExtension;
1210
import io.opentelemetry.instrumentation.testing.junit.http.HttpClientInstrumentationExtension;
1311
import io.opentelemetry.instrumentation.testing.junit.http.HttpClientTestOptions;
14-
import io.opentelemetry.semconv.NetworkAttributes;
15-
import java.net.URI;
16-
import java.util.HashSet;
17-
import java.util.Set;
18-
import org.junit.jupiter.api.condition.OS;
1912
import org.junit.jupiter.api.extension.RegisterExtension;
20-
import ratpack.http.client.HttpClientReadTimeoutException;
2113

2214
class RatpackForkedHttpClientTest extends AbstractRatpackForkedHttpClientTest {
2315

2416
@RegisterExtension
2517
static final InstrumentationExtension testing = HttpClientInstrumentationExtension.forAgent();
2618

2719
@Override
28-
protected Set<AttributeKey<?>> computeHttpAttributes(URI uri) {
29-
Set<AttributeKey<?>> attributes = new HashSet<>(super.computeHttpAttributes(uri));
30-
attributes.remove(NetworkAttributes.NETWORK_PROTOCOL_VERSION);
31-
return attributes;
20+
protected boolean useNettyClientAttributes() {
21+
return false;
3222
}
3323

3424
@Override
3525
protected void configure(HttpClientTestOptions.Builder optionsBuilder) {
3626
super.configure(optionsBuilder);
37-
optionsBuilder.setExpectedClientSpanNameMapper(
38-
HttpClientTestOptions.DEFAULT_EXPECTED_CLIENT_SPAN_NAME_MAPPER);
39-
optionsBuilder.setClientSpanErrorMapper(
40-
(uri, exception) -> {
41-
if (uri.toString().equals("https://192.0.2.1/")) {
42-
return new ConnectTimeoutException("Connect timeout (PT2S) connecting to " + uri);
43-
} else if (OS.WINDOWS.isCurrentOs() && uri.toString().equals("http://localhost:61/")) {
44-
return new ConnectTimeoutException("Connect timeout (PT2S) connecting to " + uri);
45-
} else if (uri.getPath().equals("/read-timeout")) {
46-
return new HttpClientReadTimeoutException(
47-
"Read timeout (PT2S) waiting on HTTP server at " + uri);
48-
}
49-
return exception;
50-
});
27+
optionsBuilder.setClientSpanErrorMapper(RatpackTestSingletons::ratpackClientSpanErrorMapper);
5128
}
5229
}

instrumentation/ratpack/ratpack-1.7/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/ratpack/v1_7/RatpackHttpClientTest.java

Lines changed: 3 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -5,48 +5,25 @@
55

66
package io.opentelemetry.javaagent.instrumentation.ratpack.v1_7;
77

8-
import io.netty.channel.ConnectTimeoutException;
9-
import io.opentelemetry.api.common.AttributeKey;
108
import io.opentelemetry.instrumentation.ratpack.client.AbstractRatpackHttpClientTest;
119
import io.opentelemetry.instrumentation.testing.junit.InstrumentationExtension;
1210
import io.opentelemetry.instrumentation.testing.junit.http.HttpClientInstrumentationExtension;
1311
import io.opentelemetry.instrumentation.testing.junit.http.HttpClientTestOptions;
14-
import io.opentelemetry.semconv.NetworkAttributes;
15-
import java.net.URI;
16-
import java.util.HashSet;
17-
import java.util.Set;
18-
import org.junit.jupiter.api.condition.OS;
1912
import org.junit.jupiter.api.extension.RegisterExtension;
20-
import ratpack.http.client.HttpClientReadTimeoutException;
2113

2214
class RatpackHttpClientTest extends AbstractRatpackHttpClientTest {
2315

2416
@RegisterExtension
2517
static final InstrumentationExtension testing = HttpClientInstrumentationExtension.forAgent();
2618

2719
@Override
28-
protected Set<AttributeKey<?>> computeHttpAttributes(URI uri) {
29-
Set<AttributeKey<?>> attributes = new HashSet<>(super.computeHttpAttributes(uri));
30-
attributes.remove(NetworkAttributes.NETWORK_PROTOCOL_VERSION);
31-
return attributes;
20+
protected boolean useNettyClientAttributes() {
21+
return false;
3222
}
3323

3424
@Override
3525
protected void configure(HttpClientTestOptions.Builder optionsBuilder) {
3626
super.configure(optionsBuilder);
37-
optionsBuilder.setExpectedClientSpanNameMapper(
38-
HttpClientTestOptions.DEFAULT_EXPECTED_CLIENT_SPAN_NAME_MAPPER);
39-
optionsBuilder.setClientSpanErrorMapper(
40-
(uri, exception) -> {
41-
if (uri.toString().equals("https://192.0.2.1/")) {
42-
return new ConnectTimeoutException("Connect timeout (PT2S) connecting to " + uri);
43-
} else if (OS.WINDOWS.isCurrentOs() && uri.toString().equals("http://localhost:61/")) {
44-
return new ConnectTimeoutException("Connect timeout (PT2S) connecting to " + uri);
45-
} else if (uri.getPath().equals("/read-timeout")) {
46-
return new HttpClientReadTimeoutException(
47-
"Read timeout (PT2S) waiting on HTTP server at " + uri);
48-
}
49-
return exception;
50-
});
27+
optionsBuilder.setClientSpanErrorMapper(RatpackTestSingletons::ratpackClientSpanErrorMapper);
5128
}
5229
}

instrumentation/ratpack/ratpack-1.7/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/ratpack/v1_7/RatpackPooledHttpClientTest.java

Lines changed: 3 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -5,47 +5,25 @@
55

66
package io.opentelemetry.javaagent.instrumentation.ratpack.v1_7;
77

8-
import io.netty.channel.ConnectTimeoutException;
9-
import io.opentelemetry.api.common.AttributeKey;
108
import io.opentelemetry.instrumentation.ratpack.client.AbstractRatpackPooledHttpClientTest;
119
import io.opentelemetry.instrumentation.testing.junit.InstrumentationExtension;
1210
import io.opentelemetry.instrumentation.testing.junit.http.HttpClientInstrumentationExtension;
1311
import io.opentelemetry.instrumentation.testing.junit.http.HttpClientTestOptions;
14-
import io.opentelemetry.semconv.NetworkAttributes;
15-
import java.net.URI;
16-
import java.util.HashSet;
17-
import java.util.Set;
18-
import org.junit.jupiter.api.condition.OS;
1912
import org.junit.jupiter.api.extension.RegisterExtension;
20-
import ratpack.http.client.HttpClientReadTimeoutException;
2113

2214
class RatpackPooledHttpClientTest extends AbstractRatpackPooledHttpClientTest {
2315

2416
@RegisterExtension
2517
static final InstrumentationExtension testing = HttpClientInstrumentationExtension.forAgent();
2618

2719
@Override
28-
protected Set<AttributeKey<?>> computeHttpAttributes(URI uri) {
29-
Set<AttributeKey<?>> attributes = new HashSet<>(super.computeHttpAttributes(uri));
30-
attributes.remove(NetworkAttributes.NETWORK_PROTOCOL_VERSION);
31-
return attributes;
20+
protected boolean useNettyClientAttributes() {
21+
return false;
3222
}
3323

3424
@Override
3525
protected void configure(HttpClientTestOptions.Builder optionsBuilder) {
3626
super.configure(optionsBuilder);
37-
optionsBuilder.setExpectedClientSpanNameMapper(
38-
HttpClientTestOptions.DEFAULT_EXPECTED_CLIENT_SPAN_NAME_MAPPER);
39-
optionsBuilder.setClientSpanErrorMapper(
40-
(uri, exception) -> {
41-
if (uri.toString().equals("https://192.0.2.1/")
42-
|| (OS.WINDOWS.isCurrentOs() && uri.toString().equals("http://localhost:61/"))) {
43-
return new ConnectTimeoutException("Connect timeout (PT2S) connecting to " + uri);
44-
} else if (uri.getPath().equals("/read-timeout")) {
45-
return new HttpClientReadTimeoutException(
46-
"Read timeout (PT2S) waiting on HTTP server at " + uri);
47-
}
48-
return exception;
49-
});
27+
optionsBuilder.setClientSpanErrorMapper(RatpackTestSingletons::ratpackClientSpanErrorMapper);
5028
}
5129
}

0 commit comments

Comments
 (0)