Muzzle AWS SDK Instrumentation
Add muzzle blocks and remove class loader matcher methods.
This commit is contained in:
parent
b58606d601
commit
254f721baf
|
@ -1,39 +1,9 @@
|
||||||
apply plugin: 'version-scan'
|
muzzle {
|
||||||
|
pass {
|
||||||
// Commented out because version scan doesn't catch the combination of tests.
|
group = "com.amazonaws"
|
||||||
// HttpClientFactory is only present starting in 1.11.0
|
module = "aws-java-sdk-core"
|
||||||
// HandlerContextAware is added in 1.11.106
|
versions = "[1.10.33,1.11.106)"
|
||||||
// The combination of the two allow us to filter the ranges.
|
}
|
||||||
//
|
|
||||||
|
|
||||||
//versionScan {
|
|
||||||
// group = "com.amazonaws"
|
|
||||||
// module = "aws-java-sdk-core"
|
|
||||||
// versions = "[1.11.0,1.11.106)"
|
|
||||||
// verifyPresent = [
|
|
||||||
// "com.amazonaws.http.client.HttpClientFactory": null,
|
|
||||||
// ]
|
|
||||||
// verifyMissing = [
|
|
||||||
// "com.amazonaws.HandlerContextAware",
|
|
||||||
// ]
|
|
||||||
//}
|
|
||||||
|
|
||||||
//versionScan {
|
|
||||||
// group = "com.amazonaws"
|
|
||||||
// module = "aws-java-sdk-core"
|
|
||||||
// versions = "[1.11.0,)"
|
|
||||||
// verifyPresent = [
|
|
||||||
// "com.amazonaws.http.client.HttpClientFactory": null,
|
|
||||||
// ]
|
|
||||||
//}
|
|
||||||
|
|
||||||
versionScan {
|
|
||||||
group = "com.amazonaws"
|
|
||||||
module = "aws-java-sdk-core"
|
|
||||||
versions = "[,1.11.106)"
|
|
||||||
verifyMissing = [
|
|
||||||
"com.amazonaws.HandlerContextAware",
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
|
|
||||||
apply from: "${rootDir}/gradle/java.gradle"
|
apply from: "${rootDir}/gradle/java.gradle"
|
||||||
|
|
|
@ -1,10 +1,8 @@
|
||||||
package datadog.trace.instrumentation.aws.v0;
|
package datadog.trace.instrumentation.aws.v0;
|
||||||
|
|
||||||
import static datadog.trace.agent.tooling.ClassLoaderMatcher.classLoaderHasClasses;
|
|
||||||
import static net.bytebuddy.matcher.ElementMatchers.declaresField;
|
import static net.bytebuddy.matcher.ElementMatchers.declaresField;
|
||||||
import static net.bytebuddy.matcher.ElementMatchers.isConstructor;
|
import static net.bytebuddy.matcher.ElementMatchers.isConstructor;
|
||||||
import static net.bytebuddy.matcher.ElementMatchers.named;
|
import static net.bytebuddy.matcher.ElementMatchers.named;
|
||||||
import static net.bytebuddy.matcher.ElementMatchers.not;
|
|
||||||
|
|
||||||
import com.amazonaws.handlers.RequestHandler2;
|
import com.amazonaws.handlers.RequestHandler2;
|
||||||
import com.google.auto.service.AutoService;
|
import com.google.auto.service.AutoService;
|
||||||
|
@ -34,15 +32,6 @@ public final class AWSClientInstrumentation extends Instrumenter.Default {
|
||||||
.and(declaresField(named("requestHandler2s")));
|
.and(declaresField(named("requestHandler2s")));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public ElementMatcher<ClassLoader> classLoaderMatcher() {
|
|
||||||
return classLoaderHasClasses("com.amazonaws.http.client.HttpClientFactory")
|
|
||||||
.and(
|
|
||||||
not(
|
|
||||||
classLoaderHasClasses(
|
|
||||||
"com.amazonaws.client.builder.AwsClientBuilder$EndpointConfiguration")));
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String[] helperClassNames() {
|
public String[] helperClassNames() {
|
||||||
return new String[] {
|
return new String[] {
|
||||||
|
|
|
@ -1,12 +1,9 @@
|
||||||
apply plugin: 'version-scan'
|
muzzle {
|
||||||
|
pass {
|
||||||
versionScan {
|
group = "com.amazonaws"
|
||||||
group = "com.amazonaws"
|
module = "aws-java-sdk-core"
|
||||||
module = "aws-java-sdk-core"
|
versions = "[1.11.106,)"
|
||||||
versions = "[1.11.106,)"
|
}
|
||||||
verifyPresent = [
|
|
||||||
"com.amazonaws.HandlerContextAware": null,
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
|
|
||||||
apply from: "${rootDir}/gradle/java.gradle"
|
apply from: "${rootDir}/gradle/java.gradle"
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
package datadog.trace.instrumentation.aws.v106;
|
package datadog.trace.instrumentation.aws.v106;
|
||||||
|
|
||||||
import static datadog.trace.agent.tooling.ClassLoaderMatcher.classLoaderHasClasses;
|
|
||||||
import static net.bytebuddy.matcher.ElementMatchers.declaresField;
|
import static net.bytebuddy.matcher.ElementMatchers.declaresField;
|
||||||
import static net.bytebuddy.matcher.ElementMatchers.isAbstract;
|
import static net.bytebuddy.matcher.ElementMatchers.isAbstract;
|
||||||
import static net.bytebuddy.matcher.ElementMatchers.isConstructor;
|
import static net.bytebuddy.matcher.ElementMatchers.isConstructor;
|
||||||
|
@ -37,11 +36,6 @@ public final class AWSClientInstrumentation extends Instrumenter.Default {
|
||||||
.and(declaresField(named("requestHandler2s"))));
|
.and(declaresField(named("requestHandler2s"))));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public ElementMatcher<ClassLoader> classLoaderMatcher() {
|
|
||||||
return classLoaderHasClasses("com.amazonaws.HandlerContextAware");
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String[] helperClassNames() {
|
public String[] helperClassNames() {
|
||||||
return new String[] {
|
return new String[] {
|
||||||
|
|
Loading…
Reference in New Issue