From 660dfc834c51da683202d9e5a0b6f90fb08ca3d1 Mon Sep 17 00:00:00 2001 From: Tyler Benson Date: Fri, 4 May 2018 12:08:11 +1000 Subject: [PATCH] =?UTF-8?q?It=20actually=20isn=E2=80=99t=20compatable=20un?= =?UTF-8?q?til=201.4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hystrix-1.3.15.gradle => hystrix-1.4/hystrix-1.4.gradle} | 5 ++--- .../hystrix/HystrixCommandInstrumentation.java | 0 .../hystrix/HystrixThreadPoolInstrumentation.java | 5 +++-- .../src/test/groovy/HystrixTest.groovy | 0 settings.gradle | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) rename dd-java-agent/instrumentation/{hystrix-1.3.15/hystrix-1.3.15.gradle => hystrix-1.4/hystrix-1.4.gradle} (82%) rename dd-java-agent/instrumentation/{hystrix-1.3.15 => hystrix-1.4}/src/main/java/datadog/trace/instrumentation/hystrix/HystrixCommandInstrumentation.java (100%) rename dd-java-agent/instrumentation/{hystrix-1.3.15 => hystrix-1.4}/src/main/java/datadog/trace/instrumentation/hystrix/HystrixThreadPoolInstrumentation.java (91%) rename dd-java-agent/instrumentation/{hystrix-1.3.15 => hystrix-1.4}/src/test/groovy/HystrixTest.groovy (100%) diff --git a/dd-java-agent/instrumentation/hystrix-1.3.15/hystrix-1.3.15.gradle b/dd-java-agent/instrumentation/hystrix-1.4/hystrix-1.4.gradle similarity index 82% rename from dd-java-agent/instrumentation/hystrix-1.3.15/hystrix-1.3.15.gradle rename to dd-java-agent/instrumentation/hystrix-1.4/hystrix-1.4.gradle index 1e2ca09168..1c6ab359db 100644 --- a/dd-java-agent/instrumentation/hystrix-1.3.15/hystrix-1.3.15.gradle +++ b/dd-java-agent/instrumentation/hystrix-1.4/hystrix-1.4.gradle @@ -3,10 +3,9 @@ apply plugin: 'version-scan' versionScan { group = "com.netflix.hystrix" module = 'hystrix-core' - versions = "[1.3.15,)" - scanMethods = true + versions = "[1.4.0,)" verifyPresent = [ - "com.netflix.hystrix.strategy.concurrency.HystrixContextScheduler\$ThreadPoolWorker": "schedule", + "com.netflix.hystrix.AbstractCommand": null, ] } diff --git a/dd-java-agent/instrumentation/hystrix-1.3.15/src/main/java/datadog/trace/instrumentation/hystrix/HystrixCommandInstrumentation.java b/dd-java-agent/instrumentation/hystrix-1.4/src/main/java/datadog/trace/instrumentation/hystrix/HystrixCommandInstrumentation.java similarity index 100% rename from dd-java-agent/instrumentation/hystrix-1.3.15/src/main/java/datadog/trace/instrumentation/hystrix/HystrixCommandInstrumentation.java rename to dd-java-agent/instrumentation/hystrix-1.4/src/main/java/datadog/trace/instrumentation/hystrix/HystrixCommandInstrumentation.java diff --git a/dd-java-agent/instrumentation/hystrix-1.3.15/src/main/java/datadog/trace/instrumentation/hystrix/HystrixThreadPoolInstrumentation.java b/dd-java-agent/instrumentation/hystrix-1.4/src/main/java/datadog/trace/instrumentation/hystrix/HystrixThreadPoolInstrumentation.java similarity index 91% rename from dd-java-agent/instrumentation/hystrix-1.3.15/src/main/java/datadog/trace/instrumentation/hystrix/HystrixThreadPoolInstrumentation.java rename to dd-java-agent/instrumentation/hystrix-1.4/src/main/java/datadog/trace/instrumentation/hystrix/HystrixThreadPoolInstrumentation.java index 99a559e1f4..290bc418f1 100644 --- a/dd-java-agent/instrumentation/hystrix-1.3.15/src/main/java/datadog/trace/instrumentation/hystrix/HystrixThreadPoolInstrumentation.java +++ b/dd-java-agent/instrumentation/hystrix-1.4/src/main/java/datadog/trace/instrumentation/hystrix/HystrixThreadPoolInstrumentation.java @@ -1,5 +1,6 @@ package datadog.trace.instrumentation.hystrix; +import static datadog.trace.agent.tooling.ClassLoaderMatcher.classLoaderHasClasses; import static net.bytebuddy.matcher.ElementMatchers.isMethod; import static net.bytebuddy.matcher.ElementMatchers.named; import static net.bytebuddy.matcher.ElementMatchers.takesArguments; @@ -31,8 +32,8 @@ public class HystrixThreadPoolInstrumentation extends Instrumenter.Configurable return agentBuilder .type( named( - "com.netflix.hystrix.strategy.concurrency.HystrixContextScheduler$ThreadPoolWorker")) - // Not adding check for classes on the classpath because this is the only class we need. + "com.netflix.hystrix.strategy.concurrency.HystrixContextScheduler$ThreadPoolWorker"), + classLoaderHasClasses("com.netflix.hystrix.AbstractCommand")) .transform(DDTransformers.defaultTransformers()) .transform( DDAdvice.create() diff --git a/dd-java-agent/instrumentation/hystrix-1.3.15/src/test/groovy/HystrixTest.groovy b/dd-java-agent/instrumentation/hystrix-1.4/src/test/groovy/HystrixTest.groovy similarity index 100% rename from dd-java-agent/instrumentation/hystrix-1.3.15/src/test/groovy/HystrixTest.groovy rename to dd-java-agent/instrumentation/hystrix-1.4/src/test/groovy/HystrixTest.groovy diff --git a/settings.gradle b/settings.gradle index 4834eae002..359750c5c9 100644 --- a/settings.gradle +++ b/settings.gradle @@ -13,7 +13,7 @@ include ':dd-java-agent:instrumentation:apache-httpclient-4.3' include ':dd-java-agent:instrumentation:aws-sdk' include ':dd-java-agent:instrumentation:classloaders' include ':dd-java-agent:instrumentation:datastax-cassandra-3.2' -include ':dd-java-agent:instrumentation:hystrix-1.3.15' +include ':dd-java-agent:instrumentation:hystrix-1.4' include ':dd-java-agent:instrumentation:jax-rs-annotations' include ':dd-java-agent:instrumentation:jax-rs-client' include ':dd-java-agent:instrumentation:java-concurrent'