Standardize instrumentation names in InstrumentationModules (#1648)
* Standardize instrumentation names in InstrumentationModules * rename gradle modules: * vertx-3.0 to vertx-web-3.0 * spark-web-framework-2.3 to spark-2.3 * add JavaDoc describing the naming rules to InstrumentationModule
This commit is contained in:
parent
3dbab606c7
commit
1a23ac3027
|
@ -1,4 +1,4 @@
|
|||
### Writing instrumentation
|
||||
# Writing instrumentation
|
||||
|
||||
**Warning**: The repository is still in the process of migrating to the structure described here.
|
||||
|
||||
|
@ -32,7 +32,7 @@ for libraries where manual instrumentation is not possible, such as `URLConnecti
|
|||
intercept even the JDK's classes. Such libraries will not have manual instrumentation but will have
|
||||
auto instrumentation.
|
||||
|
||||
#### Folder Structure
|
||||
## Folder Structure
|
||||
|
||||
Please also refer to some of our existing instrumentation for examples of our structure, for example,
|
||||
[aws-sdk-2.2](../../instrumentation/aws-sdk/aws-sdk-2.2).
|
||||
|
@ -51,8 +51,8 @@ For example, if we are targeting an RPC framework `yarpc` at version `1.0` we wo
|
|||
instrumentation ->
|
||||
...
|
||||
yarpc-1.0 ->
|
||||
auto
|
||||
yarpc-1.0-auto.gradle
|
||||
javaagent
|
||||
yarpc-1.0-javaagent.gradle
|
||||
library
|
||||
yarpc-1.0-library.gradle
|
||||
testing
|
||||
|
@ -63,12 +63,12 @@ and in the top level `settings.gradle`
|
|||
|
||||
```groovy
|
||||
|
||||
include 'instrumentation:yarpc-1.0:agent'
|
||||
include 'instrumentation:yarpc-1.0:javaagent'
|
||||
include 'instrumentation:yarpc-1.0:library'
|
||||
include 'instrumentation:yarpc-1.0:testing'
|
||||
```
|
||||
|
||||
#### Writing manual instrumentation
|
||||
## Writing manual instrumentation
|
||||
|
||||
Begin by writing the instrumentation for the library in `library`. This generally involves defining a
|
||||
`Tracer` and using the typed tracers in our `instrumentation-common` library to create and annotate
|
||||
|
@ -77,7 +77,7 @@ only depend on the OpenTelemetry API, `instrumentation-common`, and the instrume
|
|||
[instrumentation-library.gradle](../../gradle/instrumentation-library.gradle) needs to be applied to
|
||||
configure build tooling for the library.
|
||||
|
||||
#### Writing unit tests
|
||||
## Writing unit tests
|
||||
|
||||
Once the instrumentation is completed, we add unit tests to the `testing` module. Tests will
|
||||
generally apply to both manual and auto instrumentation, with the only difference being how a client
|
||||
|
@ -94,10 +94,10 @@ a method like `registerInterceptor` or wrapping the result of a library factory
|
|||
test should implement the `InstrumentationTestRunner` trait for common setup logic. If the tests
|
||||
pass, manual instrumentation is working OK.
|
||||
|
||||
#### Writing auto instrumentation
|
||||
## Writing auto instrumentation
|
||||
|
||||
Now that we have working instrumentation, we can implement auto instrumentation so users of the agent
|
||||
do not have to modify their apps to use it. Make sure the `auto` submodule has a dependency on the
|
||||
do not have to modify their apps to use it. Make sure the `javaagent` submodule has a dependency on the
|
||||
`library` submodule and a test dependency on the `testing` submodule. Auto instrumentation defines
|
||||
classes to match against to generate bytecode for. You will often match against the class you used
|
||||
in the unit test for manual instrumentation, for example the builder of a client. And then you could
|
||||
|
|
|
@ -20,7 +20,7 @@ import java.util.concurrent.Callable;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class AkkaContextPropagationInstrumentationModule extends InstrumentationModule {
|
||||
public AkkaContextPropagationInstrumentationModule() {
|
||||
super("akka_context_propagation");
|
||||
super("akka-context-propagation", "akka-context-propagation-2.5");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -30,7 +30,7 @@ import org.apache.camel.CamelContext;
|
|||
public class ApacheCamelInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public ApacheCamelInstrumentationModule() {
|
||||
super("apachecamel", "apache-camel");
|
||||
super("apache-camel", "apache-camel-2.20");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -15,7 +15,7 @@ import java.util.List;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class ApacheHttpAsyncClientInstrumentationModule extends InstrumentationModule {
|
||||
public ApacheHttpAsyncClientInstrumentationModule() {
|
||||
super("httpasyncclient", "apache-httpasyncclient");
|
||||
super("apache-httpasyncclient", "apache-httpasyncclient-4.0");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -33,7 +33,7 @@ import org.apache.commons.httpclient.HttpMethod;
|
|||
public class ApacheHttpClientInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public ApacheHttpClientInstrumentationModule() {
|
||||
super("apache-httpclient");
|
||||
super("apache-httpclient", "apache-httpclient-2.0");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -38,7 +38,7 @@ import org.apache.http.client.methods.HttpUriRequest;
|
|||
public class ApacheHttpClientInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public ApacheHttpClientInstrumentationModule() {
|
||||
super("httpclient", "apache-httpclient", "apache-http-client");
|
||||
super("apache-httpclient", "apache-httpclient-4.0");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -15,7 +15,7 @@ import java.util.List;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class ArmeriaInstrumentationModule extends InstrumentationModule {
|
||||
public ArmeriaInstrumentationModule() {
|
||||
super("armeria");
|
||||
super("armeria", "armeria-1.0");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -15,7 +15,7 @@ import java.util.List;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class AwsLambdaInstrumentationModule extends InstrumentationModule {
|
||||
public AwsLambdaInstrumentationModule() {
|
||||
super("aws-lambda");
|
||||
super("aws-lambda", "aws-lambda-1.0");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -17,7 +17,7 @@ import java.util.Map;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class AwsSdkInstrumentationModule extends InstrumentationModule {
|
||||
public AwsSdkInstrumentationModule() {
|
||||
super("aws-sdk");
|
||||
super("aws-sdk", "aws-sdk-1.11");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -17,7 +17,7 @@ import net.bytebuddy.matcher.ElementMatcher;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class AwsSdkInstrumentationModule extends InstrumentationModule {
|
||||
public AwsSdkInstrumentationModule() {
|
||||
super("aws-sdk");
|
||||
super("aws-sdk", "aws-sdk-2.2");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -26,7 +26,7 @@ import net.bytebuddy.matcher.ElementMatcher;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class CassandraClientInstrumentationModule extends InstrumentationModule {
|
||||
public CassandraClientInstrumentationModule() {
|
||||
super("cassandra");
|
||||
super("cassandra", "cassandra-3.0");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -14,7 +14,8 @@ import org.slf4j.LoggerFactory;
|
|||
|
||||
public final class CassandraQueryNormalizer {
|
||||
private static final Logger log = LoggerFactory.getLogger(CassandraQueryNormalizer.class);
|
||||
private static final boolean NORMALIZATION_ENABLED = isQueryNormalizationEnabled("cassandra");
|
||||
private static final boolean NORMALIZATION_ENABLED =
|
||||
isQueryNormalizationEnabled("cassandra", "cassandra-3.0");
|
||||
|
||||
public static String normalize(String query) {
|
||||
if (!NORMALIZATION_ENABLED) {
|
||||
|
|
|
@ -24,7 +24,7 @@ import net.bytebuddy.matcher.ElementMatcher;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class CassandraClientInstrumentationModule extends InstrumentationModule {
|
||||
public CassandraClientInstrumentationModule() {
|
||||
super("cassandra");
|
||||
super("cassandra", "cassandra-4.0");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -14,7 +14,8 @@ import org.slf4j.LoggerFactory;
|
|||
|
||||
public final class CassandraQueryNormalizer {
|
||||
private static final Logger log = LoggerFactory.getLogger(CassandraQueryNormalizer.class);
|
||||
private static final boolean NORMALIZATION_ENABLED = isQueryNormalizationEnabled("cassandra");
|
||||
private static final boolean NORMALIZATION_ENABLED =
|
||||
isQueryNormalizationEnabled("cassandra", "cassandra-4.0");
|
||||
|
||||
public static String normalize(String query) {
|
||||
if (!NORMALIZATION_ENABLED) {
|
||||
|
|
|
@ -15,7 +15,7 @@ import java.util.List;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class CouchbaseInstrumentationModule extends InstrumentationModule {
|
||||
public CouchbaseInstrumentationModule() {
|
||||
super("couchbase");
|
||||
super("couchbase", "couchbase-2.0");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -17,7 +17,8 @@ import org.slf4j.LoggerFactory;
|
|||
|
||||
public final class CouchbaseQueryNormalizer {
|
||||
private static final Logger log = LoggerFactory.getLogger(CouchbaseQueryNormalizer.class);
|
||||
private static final boolean NORMALIZATION_ENABLED = isQueryNormalizationEnabled("couchbase");
|
||||
private static final boolean NORMALIZATION_ENABLED =
|
||||
isQueryNormalizationEnabled("couchbase", "couchbase-2.0");
|
||||
|
||||
private static final Class<?> QUERY_CLASS;
|
||||
private static final Class<?> STATEMENT_CLASS;
|
||||
|
|
|
@ -18,7 +18,7 @@ import java.util.Map;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class CouchbaseInstrumentationModule extends InstrumentationModule {
|
||||
public CouchbaseInstrumentationModule() {
|
||||
super("couchbase");
|
||||
super("couchbase", "couchbase-2.6");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -30,9 +30,9 @@ import net.bytebuddy.description.type.TypeDescription;
|
|||
import net.bytebuddy.matcher.ElementMatcher;
|
||||
|
||||
@AutoService(InstrumentationModule.class)
|
||||
public final class DropwizardViewInstrumentationModule extends InstrumentationModule {
|
||||
public DropwizardViewInstrumentationModule() {
|
||||
super("dropwizard", "dropwizard-view");
|
||||
public final class DropwizardViewsInstrumentationModule extends InstrumentationModule {
|
||||
public DropwizardViewsInstrumentationModule() {
|
||||
super("dropwizard-views");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -64,7 +64,7 @@ public final class DropwizardViewInstrumentationModule extends InstrumentationMo
|
|||
.and(named("render"))
|
||||
.and(takesArgument(0, named("io.dropwizard.views.View")))
|
||||
.and(isPublic()),
|
||||
DropwizardViewInstrumentationModule.class.getName() + "$RenderAdvice");
|
||||
DropwizardViewsInstrumentationModule.class.getName() + "$RenderAdvice");
|
||||
}
|
||||
}
|
||||
|
|
@ -30,7 +30,7 @@ import org.elasticsearch.client.ResponseListener;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class Elasticsearch5RestClientInstrumentationModule extends InstrumentationModule {
|
||||
public Elasticsearch5RestClientInstrumentationModule() {
|
||||
super("elasticsearch", "elasticsearch-rest", "elasticsearch-rest-5");
|
||||
super("elasticsearch-rest", "elasticsearch-rest-5.0", "elasticsearch");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -30,7 +30,7 @@ import org.elasticsearch.client.ResponseListener;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class Elasticsearch6RestClientInstrumentationModule extends InstrumentationModule {
|
||||
public Elasticsearch6RestClientInstrumentationModule() {
|
||||
super("elasticsearch", "elasticsearch-rest", "elasticsearch-rest-6");
|
||||
super("elasticsearch-rest", "elasticsearch-rest-6.0", "elasticsearch");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -31,7 +31,7 @@ import org.elasticsearch.action.ActionResponse;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class Elasticsearch5TransportClientInstrumentationModule extends InstrumentationModule {
|
||||
public Elasticsearch5TransportClientInstrumentationModule() {
|
||||
super("elasticsearch", "elasticsearch-transport", "elasticsearch-transport-5");
|
||||
super("elasticsearch-transport", "elasticsearch-transport-5.0", "elasticsearch");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -32,7 +32,7 @@ import org.elasticsearch.action.ActionResponse;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class Elasticsearch53TransportClientInstrumentationModule extends InstrumentationModule {
|
||||
public Elasticsearch53TransportClientInstrumentationModule() {
|
||||
super("elasticsearch", "elasticsearch-transport", "elasticsearch-transport-5");
|
||||
super("elasticsearch-transport", "elasticsearch-transport-5.3", "elasticsearch");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -35,7 +35,7 @@ import org.elasticsearch.action.ActionResponse;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class Elasticsearch6TransportClientInstrumentationModule extends InstrumentationModule {
|
||||
public Elasticsearch6TransportClientInstrumentationModule() {
|
||||
super("elasticsearch", "elasticsearch-transport", "elasticsearch-transport-6");
|
||||
super("elasticsearch-transport", "elasticsearch-transport-6.0", "elasticsearch");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -37,7 +37,7 @@ import scala.Some;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class FinatraInstrumentationModule extends InstrumentationModule {
|
||||
public FinatraInstrumentationModule() {
|
||||
super("finatra");
|
||||
super("finatra", "finatra-2.9");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -33,7 +33,7 @@ import org.apache.geode.cache.Region;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class GeodeInstrumentationModule extends InstrumentationModule {
|
||||
public GeodeInstrumentationModule() {
|
||||
super("geode", "geode-client");
|
||||
super("geode", "geode-1.4");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -15,7 +15,7 @@ import org.slf4j.LoggerFactory;
|
|||
public final class GeodeQueryNormalizer {
|
||||
private static final Logger log = LoggerFactory.getLogger(GeodeQueryNormalizer.class);
|
||||
private static final boolean NORMALIZATION_ENABLED =
|
||||
isQueryNormalizationEnabled("geode", "geode-client");
|
||||
isQueryNormalizationEnabled("geode", "geode-1.4");
|
||||
|
||||
public static String normalize(String query) {
|
||||
if (!NORMALIZATION_ENABLED || query == null) {
|
||||
|
|
|
@ -37,7 +37,7 @@ import net.bytebuddy.matcher.ElementMatcher;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class GoogleHttpClientInstrumentationModule extends InstrumentationModule {
|
||||
public GoogleHttpClientInstrumentationModule() {
|
||||
super("google-http-client");
|
||||
super("google-http-client", "google-http-client-1.19");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -15,7 +15,7 @@ import java.util.List;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class GrizzlyInstrumentationModule extends InstrumentationModule {
|
||||
public GrizzlyInstrumentationModule() {
|
||||
super("grizzly");
|
||||
super("grizzly", "grizzly-2.0");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -18,7 +18,7 @@ import java.util.Map;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class GrizzlyClientInstrumentationModule extends InstrumentationModule {
|
||||
public GrizzlyClientInstrumentationModule() {
|
||||
super("grizzly-client", "ning");
|
||||
super("grizzly-client", "grizzly-client-1.9", "ning");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -15,7 +15,7 @@ import java.util.List;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class GrpcInstrumentationModule extends InstrumentationModule {
|
||||
public GrpcInstrumentationModule() {
|
||||
super("grpc");
|
||||
super("grpc", "grpc-1.5");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -33,7 +33,7 @@ import net.bytebuddy.matcher.ElementMatchers;
|
|||
public class GuavaInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public GuavaInstrumentationModule() {
|
||||
super("guava");
|
||||
super("guava", "guava-10.0");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -20,7 +20,7 @@ import java.util.Map;
|
|||
public class HibernateInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public HibernateInstrumentationModule() {
|
||||
super("hibernate", "hibernate-core");
|
||||
super("hibernate", "hibernate-3.3");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -20,7 +20,7 @@ import java.util.Map;
|
|||
public class HibernateInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public HibernateInstrumentationModule() {
|
||||
super("hibernate", "hibernate-core");
|
||||
super("hibernate", "hibernate-4.0");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -19,7 +19,7 @@ import java.util.Map;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class HibernateInstrumentationModule extends InstrumentationModule {
|
||||
public HibernateInstrumentationModule() {
|
||||
super("hibernate", "hibernate-core");
|
||||
super("hibernate", "hibernate-4.3");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -35,7 +35,7 @@ public class HystrixInstrumentationModule extends InstrumentationModule {
|
|||
private static final String OPERATION_NAME = "hystrix.cmd";
|
||||
|
||||
public HystrixInstrumentationModule() {
|
||||
super("hystrix");
|
||||
super("hystrix", "hystrix-1.4");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -15,7 +15,7 @@ import java.util.List;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class ClassLoaderInstrumentationModule extends InstrumentationModule {
|
||||
public ClassLoaderInstrumentationModule() {
|
||||
super("class-loader");
|
||||
super("classloader");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -20,9 +20,9 @@ import java.util.concurrent.ForkJoinTask;
|
|||
import java.util.concurrent.Future;
|
||||
|
||||
@AutoService(InstrumentationModule.class)
|
||||
public class JavaConcurrentInstrumentationModule extends InstrumentationModule {
|
||||
public JavaConcurrentInstrumentationModule() {
|
||||
super("java_concurrent");
|
||||
public class ExecutorInstrumentationModule extends InstrumentationModule {
|
||||
public ExecutorInstrumentationModule() {
|
||||
super("executor");
|
||||
}
|
||||
|
||||
@Override
|
|
@ -22,10 +22,10 @@ import net.bytebuddy.description.method.MethodDescription;
|
|||
import net.bytebuddy.matcher.ElementMatcher;
|
||||
|
||||
@AutoService(InstrumentationModule.class)
|
||||
public final class NonStandardExecutorsInstrumentationModule extends InstrumentationModule {
|
||||
public final class NonStandardExecutorInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public NonStandardExecutorsInstrumentationModule() {
|
||||
super("java_concurrent.other");
|
||||
public NonStandardExecutorInstrumentationModule() {
|
||||
super("executor", "non-standard-executor");
|
||||
}
|
||||
|
||||
@Override
|
|
@ -35,7 +35,7 @@ import net.bytebuddy.matcher.ElementMatcher;
|
|||
public final class JaxRsClientInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public JaxRsClientInstrumentationModule() {
|
||||
super("jax-rs", "jaxrs", "jax-rs-client");
|
||||
super("jaxrs-client", "jaxrs-client-1.1");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -37,7 +37,7 @@ import org.glassfish.jersey.client.ClientRequest;
|
|||
public final class JerseyClientInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public JerseyClientInstrumentationModule() {
|
||||
super("jax-rs", "jaxrs", "jax-rs-client");
|
||||
super("jaxrs-client", "jaxrs-client-2.0", "jersey-client", "jersey-client-2.0");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -39,7 +39,7 @@ import org.jboss.resteasy.client.jaxrs.internal.ClientInvocation;
|
|||
public final class ResteasyClientInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public ResteasyClientInstrumentationModule() {
|
||||
super("jax-rs", "jaxrs", "jax-rs-client");
|
||||
super("jaxrs-client", "jaxrs-client-2.0", "resteasy-client", "resteasy-client-2.0");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -29,7 +29,7 @@ import net.bytebuddy.matcher.ElementMatcher;
|
|||
public final class JaxRsClientInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public JaxRsClientInstrumentationModule() {
|
||||
super("jax-rs", "jaxrs", "jax-rs-client");
|
||||
super("jaxrs-client", "jaxrs-client-2.0");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -18,7 +18,7 @@ import net.bytebuddy.matcher.ElementMatcher;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class JaxRsInstrumentationModule extends InstrumentationModule {
|
||||
public JaxRsInstrumentationModule() {
|
||||
super("jax-rs", "jaxrs");
|
||||
super("jaxrs", "jaxrs-1.0");
|
||||
}
|
||||
|
||||
// this is required to make sure instrumentation won't apply to jax-rs 2
|
||||
|
|
|
@ -20,7 +20,7 @@ import net.bytebuddy.matcher.ElementMatcher;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class JaxRsInstrumentationModule extends InstrumentationModule {
|
||||
public JaxRsInstrumentationModule() {
|
||||
super("jax-rs", "jaxrs");
|
||||
super("jaxrs", "jaxrs-2.0");
|
||||
}
|
||||
|
||||
// require jax-rs 2
|
||||
|
|
|
@ -14,7 +14,7 @@ import java.util.List;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class JerseyInstrumentationModule extends InstrumentationModule {
|
||||
public JerseyInstrumentationModule() {
|
||||
super("jax-rs", "jaxrs", "jersey");
|
||||
super("jaxrs", "jaxrs-2.0", "jersey", "jersey-2.0");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -14,7 +14,7 @@ import java.util.List;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class Resteasy30InstrumentationModule extends InstrumentationModule {
|
||||
public Resteasy30InstrumentationModule() {
|
||||
super("jax-rs", "jaxrs", "resteasy");
|
||||
super("jaxrs", "jaxrs-2.0", "resteasy", "resteasy-3.0");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -14,7 +14,7 @@ import java.util.List;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class Resteasy31InstrumentationModule extends InstrumentationModule {
|
||||
public Resteasy31InstrumentationModule() {
|
||||
super("jax-rs", "jaxrs", "resteasy");
|
||||
super("jaxrs", "jaxrs-2.0", "resteasy", "resteasy-3.1");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -23,7 +23,7 @@ public class JedisClientTracer extends DatabaseClientTracer<Connection, CommandW
|
|||
}
|
||||
|
||||
private final RedisCommandNormalizer commandNormalizer =
|
||||
new RedisCommandNormalizer("jedis", "redis");
|
||||
new RedisCommandNormalizer("jedis", "jedis-1.4");
|
||||
|
||||
@Override
|
||||
protected String spanName(Connection connection, CommandWithArgs query, String normalizedQuery) {
|
||||
|
|
|
@ -36,7 +36,7 @@ import redis.clients.jedis.Protocol.Command;
|
|||
public final class JedisInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public JedisInstrumentationModule() {
|
||||
super("jedis", "redis");
|
||||
super("jedis", "jedis-1.4");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -25,7 +25,7 @@ public class JedisClientTracer extends DatabaseClientTracer<Connection, CommandW
|
|||
}
|
||||
|
||||
private final RedisCommandNormalizer commandNormalizer =
|
||||
new RedisCommandNormalizer("jedis", "redis");
|
||||
new RedisCommandNormalizer("jedis", "jedis-3.0");
|
||||
|
||||
@Override
|
||||
protected String spanName(Connection connection, CommandWithArgs query, String normalizedQuery) {
|
||||
|
|
|
@ -33,7 +33,7 @@ import redis.clients.jedis.commands.ProtocolCommand;
|
|||
public final class JedisInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public JedisInstrumentationModule() {
|
||||
super("jedis", "redis");
|
||||
super("jedis", "jedis-3.0");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -27,7 +27,7 @@ import net.bytebuddy.matcher.ElementMatcher;
|
|||
public final class JettyInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public JettyInstrumentationModule() {
|
||||
super("jetty", "jetty-8");
|
||||
super("jetty", "jetty-8.0");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -17,7 +17,7 @@ import java.util.Map;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class JmsInstrumentationModule extends InstrumentationModule {
|
||||
public JmsInstrumentationModule() {
|
||||
super("jms", "jms-1", "jms-2");
|
||||
super("jms", "jms-1.1");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -13,9 +13,9 @@ import io.opentelemetry.javaagent.tooling.TypeInstrumentation;
|
|||
import java.util.List;
|
||||
|
||||
@AutoService(InstrumentationModule.class)
|
||||
public class KafkaInstrumentationModule extends InstrumentationModule {
|
||||
public KafkaInstrumentationModule() {
|
||||
super("kafka");
|
||||
public class KafkaClientsInstrumentationModule extends InstrumentationModule {
|
||||
public KafkaClientsInstrumentationModule() {
|
||||
super("kafka-clients", "kafka-clients-0.11", "kafka");
|
||||
}
|
||||
|
||||
@Override
|
|
@ -15,7 +15,7 @@ import java.util.List;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class KafkaStreamsInstrumentationModule extends InstrumentationModule {
|
||||
public KafkaStreamsInstrumentationModule() {
|
||||
super("kafka", "kafka-streams");
|
||||
super("kafka-streams", "kafka-streams-0.11", "kafka");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -28,7 +28,7 @@ import okhttp3.Interceptor;
|
|||
public class KubernetesClientInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public KubernetesClientInstrumentationModule() {
|
||||
super("kubernetes-client");
|
||||
super("kubernetes-client", "kubernetes-client-3.0");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -15,7 +15,7 @@ import java.util.List;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class LettuceInstrumentationModule extends InstrumentationModule {
|
||||
public LettuceInstrumentationModule() {
|
||||
super("lettuce", "lettuce-4");
|
||||
super("lettuce", "lettuce-4.0");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -21,7 +21,7 @@ public class LettuceDatabaseClientTracer
|
|||
}
|
||||
|
||||
private final RedisCommandNormalizer commandNormalizer =
|
||||
new RedisCommandNormalizer("lettuce", "lettuce-5");
|
||||
new RedisCommandNormalizer("lettuce", "lettuce-5.0");
|
||||
|
||||
@Override
|
||||
protected String spanName(
|
||||
|
|
|
@ -18,7 +18,7 @@ import net.bytebuddy.matcher.ElementMatcher;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class LettuceInstrumentationModule extends InstrumentationModule {
|
||||
public LettuceInstrumentationModule() {
|
||||
super("lettuce", "lettuce-5");
|
||||
super("lettuce", "lettuce-5.0");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -28,7 +28,7 @@ import net.bytebuddy.matcher.ElementMatcher;
|
|||
public class LettuceInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public LettuceInstrumentationModule() {
|
||||
super("lettuce", "lettuce-5", "lettuce-5.1");
|
||||
super("lettuce", "lettuce-5.1");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -41,7 +41,7 @@ public enum OpenTelemetryTracing implements Tracing {
|
|||
}
|
||||
|
||||
private static final RedisCommandNormalizer commandNormalizer =
|
||||
new RedisCommandNormalizer("lettuce", "lettuce-5", "lettuce-5.1");
|
||||
new RedisCommandNormalizer("lettuce", "lettuce-5.1");
|
||||
|
||||
@Override
|
||||
public TracerProvider getTracerProvider() {
|
||||
|
|
|
@ -18,7 +18,7 @@ import java.util.Map;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class Log4j1InstrumentationModule extends InstrumentationModule {
|
||||
public Log4j1InstrumentationModule() {
|
||||
super("log4j1", "log4j");
|
||||
super("log4j", "log4j-1.2");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -22,7 +22,7 @@ import net.bytebuddy.matcher.ElementMatcher;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public final class Log4j2InstrumentationModule extends InstrumentationModule {
|
||||
public Log4j2InstrumentationModule() {
|
||||
super("log4j2", "log4j", "log4j-2.13.2");
|
||||
super("log4j", "log4j-2.13.2");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -30,7 +30,7 @@ import org.apache.logging.log4j.core.ContextDataInjector;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class Log4j27InstrumentationModule extends InstrumentationModule {
|
||||
public Log4j27InstrumentationModule() {
|
||||
super("log4j2", "log4j", "log4j-2.7");
|
||||
super("log4j", "log4j-2.7");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -18,7 +18,7 @@ import java.util.Map;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class LogbackInstrumentationModule extends InstrumentationModule {
|
||||
public LogbackInstrumentationModule() {
|
||||
super("logback");
|
||||
super("logback", "logback-1.0");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -32,7 +32,7 @@ import net.bytebuddy.matcher.ElementMatcher;
|
|||
public final class MongoClientInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public MongoClientInstrumentationModule() {
|
||||
super("mongo");
|
||||
super("mongo", "mongo-3.1");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -32,7 +32,7 @@ import net.bytebuddy.matcher.ElementMatcher;
|
|||
public final class MongoClientInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public MongoClientInstrumentationModule() {
|
||||
super("mongo");
|
||||
super("mongo", "mongo-3.7");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -33,7 +33,7 @@ import net.bytebuddy.matcher.ElementMatcher;
|
|||
public final class MongoAsyncClientInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public MongoAsyncClientInstrumentationModule() {
|
||||
super("mongo");
|
||||
super("mongo-async", "mongo-async-3.3", "mongo");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -25,7 +25,7 @@ import net.bytebuddy.matcher.ElementMatcher;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class OkHttp2InstrumentationModule extends InstrumentationModule {
|
||||
public OkHttp2InstrumentationModule() {
|
||||
super("okhttp", "okhttp-2");
|
||||
super("okhttp", "okhttp-2.2");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -27,7 +27,7 @@ import okhttp3.OkHttpClient;
|
|||
public class OkHttp3InstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public OkHttp3InstrumentationModule() {
|
||||
super("okhttp", "okhttp-3");
|
||||
super("okhttp", "okhttp-3.0");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -38,7 +38,7 @@ public final class WithSpanAnnotationInstrumentationModule extends Instrumentati
|
|||
"otel.trace.annotated.methods.exclude";
|
||||
|
||||
public WithSpanAnnotationInstrumentationModule() {
|
||||
super("trace", "with-span-annotation");
|
||||
super("with-span-annotation");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -26,7 +26,7 @@ import play.shaded.ahc.org.asynchttpclient.ws.WebSocketUpgradeHandler;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class PlayWsInstrumentationModule extends InstrumentationModule {
|
||||
public PlayWsInstrumentationModule() {
|
||||
super("play-ws");
|
||||
super("play-ws", "play-ws-1.0");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -24,7 +24,7 @@ import play.shaded.ahc.org.asynchttpclient.ws.WebSocketUpgradeHandler;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class PlayWsInstrumentationModule extends InstrumentationModule {
|
||||
public PlayWsInstrumentationModule() {
|
||||
super("play-ws");
|
||||
super("play-ws", "play-ws-2.0");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -24,7 +24,7 @@ import play.shaded.ahc.org.asynchttpclient.ws.WebSocketUpgradeHandler;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class PlayWsInstrumentationModule extends InstrumentationModule {
|
||||
public PlayWsInstrumentationModule() {
|
||||
super("play-ws");
|
||||
super("play-ws", "play-ws-2.1");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -26,7 +26,7 @@ import net.bytebuddy.matcher.ElementMatcher;
|
|||
public final class PlayInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public PlayInstrumentationModule() {
|
||||
super("play", "play-action");
|
||||
super("play", "play-2.3");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -26,7 +26,7 @@ import net.bytebuddy.matcher.ElementMatcher;
|
|||
public final class PlayInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public PlayInstrumentationModule() {
|
||||
super("play");
|
||||
super("play", "play-2.4");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -26,7 +26,7 @@ import net.bytebuddy.matcher.ElementMatcher;
|
|||
public final class PlayInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public PlayInstrumentationModule() {
|
||||
super("play");
|
||||
super("play", "play-2.6");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -15,7 +15,7 @@ import java.util.List;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class RabbitMqInstrumentationModule extends InstrumentationModule {
|
||||
public RabbitMqInstrumentationModule() {
|
||||
super("amqp", "rabbitmq");
|
||||
super("rabbitmq", "rabbitmq-2.7");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -15,7 +15,7 @@ import java.util.List;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class RatpackInstrumentationModule extends InstrumentationModule {
|
||||
public RatpackInstrumentationModule() {
|
||||
super("ratpack");
|
||||
super("ratpack", "ratpack-1.4");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -23,7 +23,7 @@ import net.bytebuddy.matcher.ElementMatcher;
|
|||
public final class ReactorInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public ReactorInstrumentationModule() {
|
||||
super("reactor-core");
|
||||
super("reactor", "reactor-3.1");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -41,7 +41,7 @@ import reactor.netty.http.client.HttpClientRequest;
|
|||
public final class ReactorNettyInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public ReactorNettyInstrumentationModule() {
|
||||
super("reactor-netty");
|
||||
super("reactor-netty", "reactor-netty-0.9");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -38,7 +38,7 @@ import scala.util.Try;
|
|||
public final class RediscalaInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public RediscalaInstrumentationModule() {
|
||||
super("rediscala", "redis");
|
||||
super("rediscala", "rediscala-1.8");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -27,7 +27,7 @@ public class RedissonClientTracer extends DatabaseClientTracer<RedisConnection,
|
|||
}
|
||||
|
||||
private final RedisCommandNormalizer commandNormalizer =
|
||||
new RedisCommandNormalizer("redisson", "redis");
|
||||
new RedisCommandNormalizer("redisson", "redisson-3.0");
|
||||
|
||||
@Override
|
||||
protected String spanName(RedisConnection connection, Object query, String normalizedQuery) {
|
||||
|
|
|
@ -28,7 +28,7 @@ import org.redisson.client.RedisConnection;
|
|||
public final class RedissonInstrumentation extends InstrumentationModule {
|
||||
|
||||
public RedissonInstrumentation() {
|
||||
super("redisson", "redis");
|
||||
super("redisson", "redisson-3.0");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -19,7 +19,7 @@ import java.util.Map;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class RmiContextPropagationInstrumentationModule extends InstrumentationModule {
|
||||
public RmiContextPropagationInstrumentationModule() {
|
||||
super("rmi", "rmi-context-propagator");
|
||||
super("rmi", "rmi-context-propagation");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -21,7 +21,7 @@ import java.util.concurrent.Callable;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class ScalaConcurrentInstrumentationModule extends InstrumentationModule {
|
||||
public ScalaConcurrentInstrumentationModule() {
|
||||
super("java_concurrent", "scala_concurrent");
|
||||
super("scala-concurrent");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -20,7 +20,7 @@ import net.bytebuddy.matcher.ElementMatcher;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class Servlet2InstrumentationModule extends InstrumentationModule {
|
||||
public Servlet2InstrumentationModule() {
|
||||
super("servlet", "servlet-2");
|
||||
super("servlet", "servlet-2.2");
|
||||
}
|
||||
|
||||
// this is required to make sure servlet 2 instrumentation won't apply to servlet 3
|
||||
|
|
|
@ -15,7 +15,7 @@ import java.util.List;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class Servlet3InstrumentationModule extends InstrumentationModule {
|
||||
public Servlet3InstrumentationModule() {
|
||||
super("servlet", "servlet-3");
|
||||
super("servlet", "servlet-3.0");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -29,7 +29,7 @@ import spark.routematch.RouteMatch;
|
|||
public class SparkInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public SparkInstrumentationModule() {
|
||||
super("sparkjava", "sparkjava-2.4");
|
||||
super("spark", "spark-2.3");
|
||||
}
|
||||
|
||||
@Override
|
|
@ -5,10 +5,10 @@
|
|||
|
||||
import static io.opentelemetry.api.trace.Span.Kind.SERVER
|
||||
|
||||
import io.opentelemetry.api.trace.attributes.SemanticAttributes
|
||||
import io.opentelemetry.instrumentation.test.AgentTestRunner
|
||||
import io.opentelemetry.instrumentation.test.utils.OkHttpUtils
|
||||
import io.opentelemetry.instrumentation.test.utils.PortUtils
|
||||
import io.opentelemetry.api.trace.attributes.SemanticAttributes
|
||||
import okhttp3.OkHttpClient
|
||||
import okhttp3.Request
|
||||
import spark.Spark
|
|
@ -35,7 +35,7 @@ import org.springframework.data.repository.core.support.RepositoryProxyPostProce
|
|||
public final class SpringDataInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public SpringDataInstrumentationModule() {
|
||||
super("spring-data");
|
||||
super("spring-data", "spring-data-1.8");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -25,7 +25,7 @@ import net.bytebuddy.matcher.ElementMatcher;
|
|||
public final class SpringSchedulingInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public SpringSchedulingInstrumentationModule() {
|
||||
super("spring-scheduling");
|
||||
super("spring-scheduling", "spring-scheduling-3.1");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -26,7 +26,7 @@ import net.bytebuddy.matcher.ElementMatcher;
|
|||
public class WebfluxClientInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public WebfluxClientInstrumentationModule() {
|
||||
super("spring-webflux", "spring-webflux-client");
|
||||
super("spring-webflux", "spring-webflux-5.0", "spring-webflux-client");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -16,7 +16,7 @@ import java.util.List;
|
|||
public class WebfluxServerInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public WebfluxServerInstrumentationModule() {
|
||||
super("spring-webflux", "spring-webflux-server");
|
||||
super("spring-webflux", "spring-webflux-5.0", "spring-webflux-server");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -13,9 +13,9 @@ import io.opentelemetry.javaagent.tooling.TypeInstrumentation;
|
|||
import java.util.List;
|
||||
|
||||
@AutoService(InstrumentationModule.class)
|
||||
public final class SpringMvcInstrumentationModule extends InstrumentationModule {
|
||||
public SpringMvcInstrumentationModule() {
|
||||
super("spring-mvc");
|
||||
public final class SpringWebMvcInstrumentationModule extends InstrumentationModule {
|
||||
public SpringWebMvcInstrumentationModule() {
|
||||
super("spring-webmvc", "spring-webmvc-3.1");
|
||||
}
|
||||
|
||||
@Override
|
|
@ -33,7 +33,7 @@ import net.spy.memcached.internal.OperationFuture;
|
|||
public final class SpymemcachedInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public SpymemcachedInstrumentationModule() {
|
||||
super("spymemcached");
|
||||
super("spymemcached", "spymemcached-2.12");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -15,7 +15,7 @@ import java.util.List;
|
|||
@AutoService(InstrumentationModule.class)
|
||||
public class TwilioInstrumentationModule extends InstrumentationModule {
|
||||
public TwilioInstrumentationModule() {
|
||||
super("twilio-sdk");
|
||||
super("twilio", "twilio-6.6");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -31,7 +31,7 @@ import net.bytebuddy.matcher.ElementMatcher;
|
|||
public class VertxRxInstrumentationModule extends InstrumentationModule {
|
||||
|
||||
public VertxRxInstrumentationModule() {
|
||||
super("vertx");
|
||||
super("vertx-reactive", "vertx-reactive-3.5", "vertx");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue