From 11a2d3bdd482456708bcc8781eceb6366817e419 Mon Sep 17 00:00:00 2001 From: Andrew Kent Date: Wed, 10 Jan 2018 17:42:29 -0800 Subject: [PATCH] Fix helpers for httpclient, and servlet3 --- .../apachehttpclient/ApacheHttpClientInstrumentation.java | 3 ++- .../instrumentation/okhttp3/OkHttp3Instrumentation.java | 8 +++++++- .../servlet3/FilterChain3Instrumentation.java | 3 ++- .../servlet3/HttpServlet3Instrumentation.java | 3 ++- 4 files changed, 13 insertions(+), 4 deletions(-) diff --git a/dd-java-agent/instrumentation/apache-httpclient-4.3/src/main/java/datadog/trace/instrumentation/apachehttpclient/ApacheHttpClientInstrumentation.java b/dd-java-agent/instrumentation/apache-httpclient-4.3/src/main/java/datadog/trace/instrumentation/apachehttpclient/ApacheHttpClientInstrumentation.java index 27eeb178f4..705a1b8bba 100644 --- a/dd-java-agent/instrumentation/apache-httpclient-4.3/src/main/java/datadog/trace/instrumentation/apachehttpclient/ApacheHttpClientInstrumentation.java +++ b/dd-java-agent/instrumentation/apache-httpclient-4.3/src/main/java/datadog/trace/instrumentation/apachehttpclient/ApacheHttpClientInstrumentation.java @@ -34,7 +34,8 @@ public class ApacheHttpClientInstrumentation implements Instrumenter { "org.apache.http.impl.execchain.ClientExecChain")) .transform( new HelperInjector( - "datadog.trace.instrumentation.apachehttpclient.DDTracingClientExec")) + "datadog.trace.instrumentation.apachehttpclient.DDTracingClientExec", + "datadog.trace.instrumentation.apachehttpclient.DDTracingClientExec$HttpHeadersInjectAdapter")) .transform( DDAdvice.create() .advice( diff --git a/dd-java-agent/instrumentation/okhttp-3/src/main/java/datadog/trace/instrumentation/okhttp3/OkHttp3Instrumentation.java b/dd-java-agent/instrumentation/okhttp-3/src/main/java/datadog/trace/instrumentation/okhttp3/OkHttp3Instrumentation.java index 465a196457..742960a137 100644 --- a/dd-java-agent/instrumentation/okhttp-3/src/main/java/datadog/trace/instrumentation/okhttp3/OkHttp3Instrumentation.java +++ b/dd-java-agent/instrumentation/okhttp-3/src/main/java/datadog/trace/instrumentation/okhttp3/OkHttp3Instrumentation.java @@ -26,7 +26,13 @@ public class OkHttp3Instrumentation implements Instrumenter { return agentBuilder .type( named("okhttp3.OkHttpClient"), - classLoaderHasClasses("okhttp3.Cookie", "okhttp3.ConnectionPool", "okhttp3.Headers")) + classLoaderHasClasses( + "okhttp3.Request", + "okhttp3.Response", + "okhttp3.Connection", + "okhttp3.Cookie", + "okhttp3.ConnectionPool", + "okhttp3.Headers")) .transform( new HelperInjector( "io.opentracing.contrib.okhttp3.OkHttpClientSpanDecorator", diff --git a/dd-java-agent/instrumentation/servlet-3/src/main/java/datadog/trace/instrumentation/servlet3/FilterChain3Instrumentation.java b/dd-java-agent/instrumentation/servlet-3/src/main/java/datadog/trace/instrumentation/servlet3/FilterChain3Instrumentation.java index acb5414eb3..25615c11ea 100644 --- a/dd-java-agent/instrumentation/servlet-3/src/main/java/datadog/trace/instrumentation/servlet3/FilterChain3Instrumentation.java +++ b/dd-java-agent/instrumentation/servlet-3/src/main/java/datadog/trace/instrumentation/servlet3/FilterChain3Instrumentation.java @@ -49,7 +49,8 @@ public final class FilterChain3Instrumentation implements Instrumenter { "io.opentracing.contrib.web.servlet.filter.ServletFilterSpanDecorator", "io.opentracing.contrib.web.servlet.filter.ServletFilterSpanDecorator$1", "io.opentracing.contrib.web.servlet.filter.TracingFilter", - "io.opentracing.contrib.web.servlet.filter.TracingFilter$1")) + "io.opentracing.contrib.web.servlet.filter.TracingFilter$1", + getClass().getName() + "$HttpServlet3Advice$TagSettingAsyncListener")) .transform( DDAdvice.create() .advice( diff --git a/dd-java-agent/instrumentation/servlet-3/src/main/java/datadog/trace/instrumentation/servlet3/HttpServlet3Instrumentation.java b/dd-java-agent/instrumentation/servlet-3/src/main/java/datadog/trace/instrumentation/servlet3/HttpServlet3Instrumentation.java index 8d10b14868..a3bddfbe8f 100644 --- a/dd-java-agent/instrumentation/servlet-3/src/main/java/datadog/trace/instrumentation/servlet3/HttpServlet3Instrumentation.java +++ b/dd-java-agent/instrumentation/servlet-3/src/main/java/datadog/trace/instrumentation/servlet3/HttpServlet3Instrumentation.java @@ -47,7 +47,8 @@ public final class HttpServlet3Instrumentation implements Instrumenter { "io.opentracing.contrib.web.servlet.filter.ServletFilterSpanDecorator", "io.opentracing.contrib.web.servlet.filter.ServletFilterSpanDecorator$1", "io.opentracing.contrib.web.servlet.filter.TracingFilter", - "io.opentracing.contrib.web.servlet.filter.TracingFilter$1")) + "io.opentracing.contrib.web.servlet.filter.TracingFilter$1", + getClass().getName() + "$HttpServlet3Advice$TagSettingAsyncListener")) .transform( DDAdvice.create() .advice(