We automatically instrument and support a huge number of libraries, frameworks, and application servers... right out of the box!
Don't see your favorite tool listed here? Consider filing an issue, or contributing.
These are the supported libraries and frameworks:
† OpenTelemetry support provided by the library
These are the application servers that the smoke tests are run against:
Application server | Version | JVM | OS |
---|---|---|---|
Jetty | 9.4.x, 10.0.x, 11.0.x | OpenJDK 8, 11, 17 | Ubuntu 18, Windows Server 2019 |
Payara | 5.0.x, 5.1.x | OpenJDK 8, 11 | Ubuntu 18, Windows Server 2019 |
Tomcat | 7.0.x | OpenJDK 8 | Ubuntu 18, Windows Server 2019 |
Tomcat | 7.0.x, 8.5.x, 9.0.x, 10.0.x | OpenJDK 8, 11, 17 | Ubuntu 18, Windows Server 2019 |
TomEE | 7.x, 8.x | OpenJDK 8, 11, 17 | Ubuntu 18, Windows Server 2019 |
Websphere Liberty Profile | 20.x, 21.x | OpenJDK 8 | Ubuntu 18, Windows Server 2019 |
Websphere Traditional | 8.5.5.x, 9.0.x | IBM JDK 8 | Red Hat Enterprise Linux 8.4 |
WildFly | 13.x | OpenJDK 8 | Ubuntu 18, Windows Server 2019 |
WildFly | 17.x, 21.x, 25.x | OpenJDK 8, 11, 17 | Ubuntu 18, Windows Server 2019 |
These are the JVMs and operating systems that the integration tests are run against:
JVM | Versions | OS |
---|---|---|
AdoptOpenJDK Hotspot | 8, 11, 15 | Ubuntu 18, Windows Server 2019 |
AdoptOpenJDK OpenJ9 | 8, 11, 15 | Ubuntu 18, Windows Server 2019 |
Some instrumentations can produce too many spans and make traces very noisy. For this reason, the following instrumentations are disabled by default:
jdbc-datasource
which creates spans whenever thejava.sql.DataSource#getConnection
method is called.
To enable them, add the otel.instrumentation.<name>.enabled
system property:
-Dotel.instrumentation.jdbc-datasource.enabled=true
When you use
Grizzly for
Servlet-based applications, you get better experience from Servlet-specific
support. As these two instrumentations conflict with each other, more generic
instrumentation for Grizzly HTTP server is disabled by default. If needed,
you can enable it by adding the following system property:
-Dotel.instrumentation.grizzly.enabled=true