Merge pull request #509 from DataDog/gary/muzzle-spy-memcached

Muzzle Spymemcached
This commit is contained in:
Gary Huang 2018-09-27 22:44:56 -04:00 committed by GitHub
commit 7ecc49a228
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 9 additions and 20 deletions

View File

@ -1,13 +1,12 @@
apply plugin: 'version-scan'
versionScan {
// building and testing against 2.12 because setListenerExecutorService exists to facilitate easier
// testing. Instrumentation should work since 2.10
muzzle {
pass {
group = "net.spy"
module = 'spymemcached'
versions = "[1.12.0,)"
scanMethods = true
verifyPresent = [
"net.spy.memcached.ConnectionFactoryBuilder": "setListenerExecutorService",
]
versions = "[2.10.0,)"
assertInverse = true
}
}
apply from: "${rootDir}/gradle/java.gradle"

View File

@ -1,6 +1,5 @@
package datadog.trace.instrumentation.spymemcached;
import static datadog.trace.agent.tooling.ClassLoaderMatcher.classLoaderHasClassWithMethod;
import static net.bytebuddy.matcher.ElementMatchers.isMethod;
import static net.bytebuddy.matcher.ElementMatchers.isPublic;
import static net.bytebuddy.matcher.ElementMatchers.named;
@ -38,15 +37,6 @@ public final class MemcachedClientInstrumentation extends Instrumenter.Default {
return named(MEMCACHED_PACKAGE + ".MemcachedClient");
}
@Override
public ElementMatcher<ClassLoader> classLoaderMatcher() {
// Target 2.12 that has this method
return classLoaderHasClassWithMethod(
MEMCACHED_PACKAGE + ".ConnectionFactoryBuilder",
"setListenerExecutorService",
"java.util.concurrent.ExecutorService");
}
@Override
public String[] helperClassNames() {
return new String[] {