From 87038f2899ffbf34e023452bea8fafd4d0a4ac46 Mon Sep 17 00:00:00 2001 From: Trask Stalnaker Date: Mon, 11 Oct 2021 00:42:20 -0700 Subject: [PATCH] Fix call depth (#4338) --- .../instrumentation/servlet/v3_0/Servlet3Advice.java | 6 +++--- .../v5_0/service/JakartaServletServiceAdvice.java | 10 +++++----- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/instrumentation/servlet/servlet-3.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/servlet/v3_0/Servlet3Advice.java b/instrumentation/servlet/servlet-3.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/servlet/v3_0/Servlet3Advice.java index dfdceee6a5..7c302c1855 100644 --- a/instrumentation/servlet/servlet-3.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/servlet/v3_0/Servlet3Advice.java +++ b/instrumentation/servlet/servlet-3.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/servlet/v3_0/Servlet3Advice.java @@ -36,13 +36,13 @@ public class Servlet3Advice { @Advice.Local("otelContext") Context context, @Advice.Local("otelScope") Scope scope) { - callDepth = CallDepth.forClass(AppServerBridge.getCallDepthKey()); - callDepth.getAndIncrement(); - if (!(request instanceof HttpServletRequest) || !(response instanceof HttpServletResponse)) { return; } + callDepth = CallDepth.forClass(AppServerBridge.getCallDepthKey()); + callDepth.getAndIncrement(); + HttpServletRequest httpServletRequest = (HttpServletRequest) request; Context currentContext = Java8BytecodeBridge.currentContext(); diff --git a/instrumentation/servlet/servlet-5.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/servlet/v5_0/service/JakartaServletServiceAdvice.java b/instrumentation/servlet/servlet-5.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/servlet/v5_0/service/JakartaServletServiceAdvice.java index ff9e0b7969..6f0eb57cfe 100644 --- a/instrumentation/servlet/servlet-5.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/servlet/v5_0/service/JakartaServletServiceAdvice.java +++ b/instrumentation/servlet/servlet-5.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/servlet/v5_0/service/JakartaServletServiceAdvice.java @@ -37,13 +37,13 @@ public class JakartaServletServiceAdvice { @Advice.Local("otelContext") Context context, @Advice.Local("otelScope") Scope scope) { - callDepth = CallDepth.forClass(AppServerBridge.getCallDepthKey()); - callDepth.getAndIncrement(); - if (!(request instanceof HttpServletRequest) || !(response instanceof HttpServletResponse)) { return; } + callDepth = CallDepth.forClass(AppServerBridge.getCallDepthKey()); + callDepth.getAndIncrement(); + HttpServletRequest httpServletRequest = (HttpServletRequest) request; Context currentContext = Java8BytecodeBridge.currentContext(); @@ -98,12 +98,12 @@ public class JakartaServletServiceAdvice { @Advice.Local("otelContext") Context context, @Advice.Local("otelScope") Scope scope) { - boolean topLevel = callDepth.decrementAndGet() == 0; - if (!(request instanceof HttpServletRequest) || !(response instanceof HttpServletResponse)) { return; } + boolean topLevel = callDepth.decrementAndGet() == 0; + helper() .end( requestContext,