Order rules alphabetically and ensure matches.
This commit is contained in:
parent
60cfb392c4
commit
55edba486a
|
@ -9,7 +9,7 @@
|
|||
</layout>
|
||||
</appender>
|
||||
|
||||
<root level="INFO">
|
||||
<root level="DEBUG">
|
||||
<appender-ref ref="console"/>
|
||||
</root>
|
||||
|
||||
|
|
|
@ -123,6 +123,8 @@ public class TraceAnnotationsManager {
|
|||
return scripts;
|
||||
}
|
||||
|
||||
log.debug("Loading rules with classloader {}", classLoader == null ? "bootstrap" : classLoader);
|
||||
|
||||
final List<String> scriptNames = new ArrayList<>();
|
||||
|
||||
// Load default and custom rules
|
||||
|
@ -140,7 +142,7 @@ public class TraceAnnotationsManager {
|
|||
log.warn("Failed to install scripts", e);
|
||||
}
|
||||
}
|
||||
log.trace(sw.toString());
|
||||
log.debug(sw.toString());
|
||||
} catch (IOException | URISyntaxException e) {
|
||||
log.warn("Failed to load OpenTracing agent rules", e);
|
||||
}
|
||||
|
|
|
@ -34,35 +34,14 @@ opentracing-cassandra-driver:
|
|||
- com.datastax.driver.core.RemoteEndpointAwareNettySSLOptions
|
||||
- com.datastax.driver.core.GuavaCompatibility
|
||||
|
||||
opentracing-web-servlet-filter:
|
||||
- artifact: jetty-server
|
||||
supported_version: (8\.|9\.).*
|
||||
# identifying_present_classes:
|
||||
|
||||
- artifact: tomcat_catalina
|
||||
supported_version: (8\.|9\.).*
|
||||
opentracing-jms-2_producer:
|
||||
- artifact: javax.jms-api
|
||||
supported_version: 2\..*
|
||||
identifying_present_classes:
|
||||
- org.apache.catalina.WebResource
|
||||
- org.apache.catalina.webresources.TrackedInputStream
|
||||
- org.apache.catalina.webresources.AbstractArchiveResource
|
||||
- javax.jms.JMSContext
|
||||
- javax.jms.CompletionListener
|
||||
|
||||
- artifact: tomcat-embed-core
|
||||
supported_version: (8\.|9\.).*
|
||||
identifying_present_classes:
|
||||
- org.apache.catalina.WebResource
|
||||
- org.apache.catalina.webresources.TrackedInputStream
|
||||
- org.apache.catalina.webresources.AbstractArchiveResource
|
||||
|
||||
opentracing-okhttp3:
|
||||
- artifact: okhttp
|
||||
supported_version: 3\..*
|
||||
identifying_present_classes:
|
||||
- okhttp3.Cookie
|
||||
- okhttp3.ConnectionPool
|
||||
- okhttp3.Headers
|
||||
|
||||
# For rules opentracing-jms-2_{consumer,producer}
|
||||
opentracing-jms-2:
|
||||
opentracing-jms-2_consumer:
|
||||
- artifact: javax.jms-api
|
||||
supported_version: 2\..*
|
||||
identifying_present_classes:
|
||||
|
@ -82,3 +61,45 @@ opentracing-mongo-driver:
|
|||
identifying_present_classes:
|
||||
- com.mongodb.operation.AsyncReadOperation
|
||||
- com.mongodb.client.model.MapReduceAction
|
||||
|
||||
opentracing-mongo-driver-helper:
|
||||
- artifact: mongo-java-driver
|
||||
supported_version: 3\..*
|
||||
identifying_present_classes:
|
||||
- com.mongodb.operation.AsyncReadOperation
|
||||
- com.mongodb.client.model.MapReduceAction
|
||||
|
||||
- check:
|
||||
artifact: mongodb-driver-async
|
||||
supported_version: 3\..*
|
||||
identifying_present_classes:
|
||||
- com.mongodb.operation.AsyncReadOperation
|
||||
- com.mongodb.client.model.MapReduceAction
|
||||
|
||||
opentracing-okhttp3:
|
||||
- artifact: okhttp
|
||||
supported_version: 3\..*
|
||||
identifying_present_classes:
|
||||
- okhttp3.Cookie
|
||||
- okhttp3.ConnectionPool
|
||||
- okhttp3.Headers
|
||||
|
||||
opentracing-web-servlet-filter_jetty:
|
||||
- artifact: jetty-server
|
||||
supported_version: (8\.|9\.).*
|
||||
# identifying_present_classes:
|
||||
|
||||
opentracing-web-servlet-filter_tomcat:
|
||||
- artifact: opentracing-web-servlet-filter_tomcat
|
||||
supported_version: (8\.|9\.).*
|
||||
identifying_present_classes:
|
||||
- org.apache.catalina.WebResource
|
||||
- org.apache.catalina.webresources.TrackedInputStream
|
||||
- org.apache.catalina.webresources.AbstractArchiveResource
|
||||
|
||||
- artifact: opentracing-web-servlet-filter_tomcat
|
||||
supported_version: (8\.|9\.).*
|
||||
identifying_present_classes:
|
||||
- org.apache.catalina.WebResource
|
||||
- org.apache.catalina.webresources.TrackedInputStream
|
||||
- org.apache.catalina.webresources.AbstractArchiveResource
|
||||
|
|
|
@ -8,26 +8,16 @@
|
|||
###
|
||||
|
||||
|
||||
# Instrument Mongo client
|
||||
# ========================
|
||||
RULE opentracing-mongo-driver
|
||||
CLASS com.mongodb.MongoClientOptions$Builder
|
||||
METHOD build
|
||||
HELPER com.datadoghq.trace.agent.integration.MongoHelper
|
||||
AT ENTRY
|
||||
IF getState($0) == 0
|
||||
DO
|
||||
patch($this);
|
||||
ENDRULE
|
||||
|
||||
RULE mongo-decorator
|
||||
CLASS io.opentracing.contrib.mongo.TracingCommandListener
|
||||
METHOD decorate
|
||||
HELPER com.datadoghq.trace.agent.integration.MongoHelper
|
||||
# Instrument Apache HTTP Client
|
||||
# =============================
|
||||
RULE opentracing-apache-httpclient
|
||||
CLASS org.apache.http.impl.client.HttpClientBuilder
|
||||
METHOD create()
|
||||
HELPER com.datadoghq.trace.agent.integration.ApacheHTTPClientHelper
|
||||
AT EXIT
|
||||
IF TRUE
|
||||
DO
|
||||
decorate($1, $2);
|
||||
$! = patch($!);
|
||||
ENDRULE
|
||||
|
||||
|
||||
|
@ -45,19 +35,6 @@ DO
|
|||
ENDRULE
|
||||
|
||||
|
||||
# Instrument Apache HTTP Client
|
||||
# =============================
|
||||
RULE opentracing-apache-httpclient
|
||||
CLASS org.apache.http.impl.client.HttpClientBuilder
|
||||
METHOD create()
|
||||
HELPER com.datadoghq.trace.agent.integration.ApacheHTTPClientHelper
|
||||
AT EXIT
|
||||
IF TRUE
|
||||
DO
|
||||
$! = patch($!);
|
||||
ENDRULE
|
||||
|
||||
|
||||
# Instrument Cassandra client
|
||||
# ===========================
|
||||
RULE opentracing-cassandra-driver
|
||||
|
@ -71,48 +48,6 @@ DO
|
|||
ENDRULE
|
||||
|
||||
|
||||
# Instrument Jetty
|
||||
# ===========================
|
||||
# State 0 - no filter installed
|
||||
# State 1 - filter installed
|
||||
RULE opentracing-web-servlet-filter_jetty
|
||||
CLASS org.eclipse.jetty.servlet.ServletContextHandler
|
||||
METHOD <init>
|
||||
HELPER com.datadoghq.trace.agent.integration.JettyServletHelper
|
||||
AT EXIT
|
||||
IF getState($0.getServletContext()) == 0
|
||||
DO
|
||||
patch($this)
|
||||
ENDRULE
|
||||
|
||||
|
||||
# Instrument Tomcat
|
||||
# ===========================
|
||||
RULE opentracing-web-servlet-filter_tomcat
|
||||
CLASS org.apache.catalina.core.ApplicationContext
|
||||
METHOD <init>
|
||||
IMPORT javax.servlet.Filter
|
||||
HELPER com.datadoghq.trace.agent.integration.TomcatServletHelper
|
||||
AT EXIT
|
||||
IF TRUE
|
||||
DO
|
||||
patch($this)
|
||||
ENDRULE
|
||||
|
||||
|
||||
# Instrument OkHttp
|
||||
# ===========================
|
||||
RULE opentracing-okhttp3
|
||||
CLASS okhttp3.OkHttpClient$Builder
|
||||
METHOD build()
|
||||
HELPER com.datadoghq.trace.agent.integration.OkHttpHelper
|
||||
AT ENTRY
|
||||
IF TRUE
|
||||
DO
|
||||
patch($this)
|
||||
ENDRULE
|
||||
|
||||
|
||||
# Instrument JMS
|
||||
# ===========================
|
||||
RULE opentracing-jms-2_producer
|
||||
|
@ -136,3 +71,67 @@ DO
|
|||
$! = patch($!);
|
||||
ENDRULE
|
||||
|
||||
|
||||
# Instrument Mongo client
|
||||
# ========================
|
||||
RULE opentracing-mongo-driver
|
||||
CLASS com.mongodb.MongoClientOptions$Builder
|
||||
METHOD build
|
||||
HELPER com.datadoghq.trace.agent.integration.MongoHelper
|
||||
AT ENTRY
|
||||
IF getState($0) == 0
|
||||
DO
|
||||
patch($this);
|
||||
ENDRULE
|
||||
|
||||
RULE opentracing-mongo-driver-helper
|
||||
CLASS io.opentracing.contrib.mongo.TracingCommandListener
|
||||
METHOD decorate
|
||||
HELPER com.datadoghq.trace.agent.integration.MongoHelper
|
||||
AT EXIT
|
||||
IF TRUE
|
||||
DO
|
||||
decorate($1, $2);
|
||||
ENDRULE
|
||||
|
||||
|
||||
# Instrument OkHttp
|
||||
# ===========================
|
||||
RULE opentracing-okhttp3
|
||||
CLASS okhttp3.OkHttpClient$Builder
|
||||
METHOD build()
|
||||
HELPER com.datadoghq.trace.agent.integration.OkHttpHelper
|
||||
AT ENTRY
|
||||
IF TRUE
|
||||
DO
|
||||
patch($this)
|
||||
ENDRULE
|
||||
|
||||
|
||||
# Instrument Servlet - Jetty
|
||||
# ===========================
|
||||
# State 0 - no filter installed
|
||||
# State 1 - filter installed
|
||||
RULE opentracing-web-servlet-filter_jetty
|
||||
CLASS org.eclipse.jetty.servlet.ServletContextHandler
|
||||
METHOD <init>
|
||||
HELPER com.datadoghq.trace.agent.integration.JettyServletHelper
|
||||
AT EXIT
|
||||
IF getState($0.getServletContext()) == 0
|
||||
DO
|
||||
patch($this)
|
||||
ENDRULE
|
||||
|
||||
|
||||
# Instrument Servlet - Tomcat
|
||||
# ===========================
|
||||
RULE opentracing-web-servlet-filter_tomcat
|
||||
CLASS org.apache.catalina.core.ApplicationContext
|
||||
METHOD <init>
|
||||
HELPER com.datadoghq.trace.agent.integration.TomcatServletHelper
|
||||
AT EXIT
|
||||
IF TRUE
|
||||
DO
|
||||
patch($this)
|
||||
ENDRULE
|
||||
|
||||
|
|
Loading…
Reference in New Issue