Skip to content

Commit 7c67b63

Browse files
authored
Update Grizzly instrumentation to check active span instead of scope (#7982)
1 parent a86c3ca commit 7c67b63

File tree

4 files changed

+12
-15
lines changed

4 files changed

+12
-15
lines changed

dd-java-agent/instrumentation/grizzly-2/src/main/java/datadog/trace/instrumentation/grizzly/GrizzlyBlockingHelper.java

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
import datadog.appsec.api.blocking.BlockingContentType;
66
import datadog.trace.api.gateway.Flow;
77
import datadog.trace.bootstrap.blocking.BlockingActionHelper;
8-
import datadog.trace.bootstrap.instrumentation.api.AgentScope;
98
import datadog.trace.bootstrap.instrumentation.api.AgentSpan;
109
import java.io.OutputStream;
1110
import java.lang.invoke.MethodHandle;
@@ -36,14 +35,14 @@ public class GrizzlyBlockingHelper {
3635
private GrizzlyBlockingHelper() {}
3736

3837
public static boolean block(
39-
Request request, Response response, Flow.Action.RequestBlockingAction rba, AgentScope scope) {
38+
Request request, Response response, Flow.Action.RequestBlockingAction rba, AgentSpan span) {
4039
return block(
4140
request,
4241
response,
4342
rba.getStatusCode(),
4443
rba.getBlockingContentType(),
4544
rba.getExtraHeaders(),
46-
scope);
45+
span);
4746
}
4847

4948
public static boolean block(
@@ -52,7 +51,7 @@ public static boolean block(
5251
int statusCode,
5352
BlockingContentType bct,
5453
Map<String, String> extraHeaders,
55-
AgentScope scope) {
54+
AgentSpan span) {
5655
if (GET_OUTPUT_STREAM == null) {
5756
return false;
5857
}
@@ -77,15 +76,13 @@ public static boolean block(
7776
os.close();
7877
response.finish();
7978

80-
scope.span().getRequestContext().getTraceSegment().effectivelyBlocked();
79+
span.getRequestContext().getTraceSegment().effectivelyBlocked();
8180
SpanClosingListener.LISTENER.onAfterService(request);
8281
} catch (Throwable e) {
8382
log.info("Error committing blocking response", e);
84-
final AgentSpan span = scope.span();
8583
DECORATE.onError(span, e);
8684
DECORATE.beforeFinish(span);
8785
span.finish();
88-
scope.close();
8986
}
9087

9188
return true;

dd-java-agent/instrumentation/grizzly-2/src/main/java/datadog/trace/instrumentation/grizzly/GrizzlyDecorator.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
import datadog.trace.api.gateway.BlockResponseFunction;
55
import datadog.trace.api.internal.TraceSegment;
66
import datadog.trace.bootstrap.instrumentation.api.AgentPropagation;
7-
import datadog.trace.bootstrap.instrumentation.api.AgentScope;
7+
import datadog.trace.bootstrap.instrumentation.api.AgentSpan;
88
import datadog.trace.bootstrap.instrumentation.api.AgentTracer;
99
import datadog.trace.bootstrap.instrumentation.api.URIDataAdapter;
1010
import datadog.trace.bootstrap.instrumentation.api.UTF8BytesString;
@@ -90,9 +90,9 @@ public boolean tryCommitBlockingResponse(
9090
int statusCode,
9191
BlockingContentType templateType,
9292
Map<String, String> extraHeaders) {
93-
AgentScope agentScope = AgentTracer.get().activeScope();
94-
if (agentScope == null) {
95-
log.warn("Can't block: no active scope");
93+
AgentSpan agentSpan = AgentTracer.get().activeSpan();
94+
if (agentSpan == null) {
95+
log.warn("Can't block: no active span");
9696
return false;
9797
}
9898

@@ -102,7 +102,7 @@ public boolean tryCommitBlockingResponse(
102102
statusCode,
103103
templateType,
104104
extraHeaders,
105-
agentScope);
105+
agentSpan);
106106
}
107107
}
108108
}

dd-java-agent/instrumentation/grizzly-2/src/main/java/datadog/trace/instrumentation/grizzly/GrizzlyHttpHandlerInstrumentation.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ public static class HandleAdvice {
8787

8888
Flow.Action.RequestBlockingAction rba = span.getRequestBlockingAction();
8989
if (rba != null) {
90-
boolean success = GrizzlyBlockingHelper.block(request, response, rba, scope);
90+
boolean success = GrizzlyBlockingHelper.block(request, response, rba, span);
9191
if (success) {
9292
return true; /* skip body */
9393
}

dd-java-agent/instrumentation/grizzly-http-2.3.20/src/main/java/datadog/trace/instrumentation/grizzlyhttp232/FilterAdvice.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package datadog.trace.instrumentation.grizzlyhttp232;
22

33
import static datadog.trace.bootstrap.instrumentation.api.AgentTracer.activateSpan;
4-
import static datadog.trace.bootstrap.instrumentation.api.AgentTracer.activeScope;
4+
import static datadog.trace.bootstrap.instrumentation.api.AgentTracer.activeSpan;
55
import static datadog.trace.bootstrap.instrumentation.decorator.HttpServerDecorator.DD_SPAN_ATTRIBUTE;
66

77
import datadog.trace.bootstrap.instrumentation.api.AgentScope;
@@ -15,7 +15,7 @@ public class FilterAdvice {
1515
@Advice.OnMethodEnter(suppress = Throwable.class)
1616
public static AgentScope onEnter(
1717
@Advice.This BaseFilter it, @Advice.Argument(0) final FilterChainContext ctx) {
18-
if (ctx.getAttributes().getAttribute(DD_SPAN_ATTRIBUTE) == null || activeScope() != null) {
18+
if (ctx.getAttributes().getAttribute(DD_SPAN_ATTRIBUTE) == null || activeSpan() != null) {
1919
return null;
2020
}
2121
AgentScope scope =

0 commit comments

Comments
 (0)