Skip to content

Commit 336ba6e

Browse files
committed
(chore) cleanup from review
1 parent bc50fae commit 336ba6e

File tree

12 files changed

+88
-164
lines changed

12 files changed

+88
-164
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 & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,10 @@
1414
import java.net.URI;
1515
import java.time.Duration;
1616
import java.util.Collections;
17+
import java.util.HashSet;
1718
import java.util.Map;
1819
import java.util.Set;
20+
import io.opentelemetry.semconv.NetworkAttributes;
1921
import org.junit.jupiter.api.AfterAll;
2022
import org.junit.jupiter.api.BeforeAll;
2123
import org.junit.jupiter.api.condition.OS;
@@ -27,6 +29,9 @@
2729
import ratpack.http.client.ReceivedResponse;
2830
import ratpack.test.exec.ExecHarness;
2931

32+
import static io.opentelemetry.semconv.ServerAttributes.SERVER_ADDRESS;
33+
import static io.opentelemetry.semconv.ServerAttributes.SERVER_PORT;
34+
3035
public abstract class AbstractRatpackHttpClientTest extends AbstractHttpClientTest<Void> {
3136

3237
protected final ExecHarness exec = ExecHarness.harness();
@@ -122,32 +127,11 @@ 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(AbstractRatpackHttpClientTest::nettyExpectedClientSpanNameMapper);
132+
}
136133

137-
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-
});
134+
optionsBuilder.setClientSpanErrorMapper(AbstractRatpackHttpClientTest::nettyClientSpanErrorMapper);
151135

152136
optionsBuilder.setHttpAttributes(this::computeHttpAttributes);
153137

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

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)