Skip to content

Commit 0450f64

Browse files
committed
make AdviceScope class consistent, update test and remove deprecated semconv
1 parent 1546f93 commit 0450f64

File tree

4 files changed

+11
-12
lines changed

4 files changed

+11
-12
lines changed

instrumentation/play/play-mvc/play-mvc-2.4/javaagent/build.gradle.kts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,8 @@ if (!(findProperty("testLatestDeps") as Boolean)) {
8585
}
8686
}
8787
}
88+
8889
tasks.withType<Test>().configureEach {
8990
jvmArgs("-Dotel.instrumentation.common.experimental.controller-telemetry.enabled=true")
91+
jvmArgs("-Dotel.semconv-stability.opt-in=code")
9092
}

instrumentation/play/play-mvc/play-mvc-2.4/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/play/v2_4/ActionInstrumentation.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,14 +49,14 @@ public void transform(TypeTransformer transformer) {
4949
public static class ApplyAdvice {
5050

5151
@Advice.OnMethodEnter(suppress = Throwable.class)
52-
public static ActionScope onEnter(
52+
public static AdviceScope onEnter(
5353
@Advice.This Object target,
5454
@Advice.Origin Method method,
5555
@Advice.Argument(0) Request<?> req) {
5656
Context parentContext = currentContext();
5757

5858
ActionData actionData = new ActionData(target.getClass(), method);
59-
return ActionScope.start(parentContext, actionData);
59+
return AdviceScope.start(parentContext, actionData);
6060
}
6161

6262
@Advice.OnMethodExit(onThrowable = Throwable.class, suppress = Throwable.class)
@@ -65,7 +65,7 @@ public static void stopTraceOnResponse(
6565
@Advice.Thrown Throwable throwable,
6666
@Advice.Argument(0) Request<?> req,
6767
@Advice.Return(readOnly = false) Future<Result> responseFuture,
68-
@Advice.Enter ActionScope actionScope) {
68+
@Advice.Enter AdviceScope actionScope) {
6969
if (actionScope == null || actionScope.getScope() == null) {
7070
return;
7171
}
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,13 @@
1111
import io.opentelemetry.context.Scope;
1212

1313
/** Container used to carry state between enter and exit advices */
14-
public final class ActionScope {
14+
public final class AdviceScope {
1515

1616
private final ActionData actionData;
1717
private final Context context;
1818
private final Scope scope;
1919

20-
public ActionScope(Context context, Scope scope, ActionData actionData) {
20+
public AdviceScope(Context context, Scope scope, ActionData actionData) {
2121
this.actionData = actionData;
2222
this.context = context;
2323
this.scope = scope;
@@ -31,13 +31,13 @@ public Scope getScope() {
3131
return scope;
3232
}
3333

34-
public static ActionScope start(Context parentContext, ActionData actionData) {
34+
public static AdviceScope start(Context parentContext, ActionData actionData) {
3535
if (!instrumenter().shouldStart(parentContext, actionData)) {
3636
return null;
3737
}
3838

3939
Context context = instrumenter().start(parentContext, actionData);
40-
return new ActionScope(context, context.makeCurrent(), actionData);
40+
return new AdviceScope(context, context.makeCurrent(), actionData);
4141
}
4242

4343
public void closeScope() {

instrumentation/play/play-mvc/play-mvc-2.4/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/play/v2_4/server/PlayServerTest.java

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,6 @@
1515
import static io.opentelemetry.instrumentation.testing.junit.http.ServerEndpoint.SUCCESS;
1616
import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.equalTo;
1717
import static io.opentelemetry.semconv.HttpAttributes.HTTP_ROUTE;
18-
import static io.opentelemetry.semconv.incubating.CodeIncubatingAttributes.CODE_FUNCTION;
19-
import static io.opentelemetry.semconv.incubating.CodeIncubatingAttributes.CODE_NAMESPACE;
2018

2119
import io.opentelemetry.api.common.AttributeKey;
2220
import io.opentelemetry.instrumentation.testing.junit.InstrumentationExtension;
@@ -26,6 +24,7 @@
2624
import io.opentelemetry.instrumentation.testing.junit.http.ServerEndpoint;
2725
import io.opentelemetry.sdk.testing.assertj.SpanDataAssert;
2826
import io.opentelemetry.sdk.trace.data.StatusData;
27+
import io.opentelemetry.semconv.CodeAttributes;
2928
import java.util.HashSet;
3029
import java.util.Set;
3130
import org.junit.jupiter.api.extension.RegisterExtension;
@@ -115,14 +114,12 @@ protected void configure(HttpServerTestOptions options) {
115114
}
116115

117116
@Override
118-
@SuppressWarnings("deprecation") // uses deprecated semconv
119117
public SpanDataAssert assertHandlerSpan(
120118
SpanDataAssert span, String method, ServerEndpoint endpoint) {
121119
span.hasName("play.request")
122120
.hasKind(INTERNAL)
123121
.hasAttributesSatisfyingExactly(
124-
equalTo(CODE_NAMESPACE, "play.api.mvc.ActionBuilder$$anon$2"),
125-
equalTo(CODE_FUNCTION, "apply"));
122+
equalTo(CodeAttributes.CODE_FUNCTION_NAME, "play.api.mvc.ActionBuilder$$anon$2.apply"));
126123

127124
if (endpoint == EXCEPTION) {
128125
span.hasStatus(StatusData.error());

0 commit comments

Comments
 (0)