Technologies supported by the EDOT Java Agent
Elastic Cloud Serverless projects are autoscaled environments, fully managed by Elastic and available on Elastic Cloud. Availability This functionality is generally available and ready for production usage. The Elastic Stack includes Elastic's core products such as Elasticsearch, Kibana, Logstash, and Beats. Availability This functionality is generally available and ready for production usage. Unless stated otherwise on the page, this functionality is available when your Elastic Stack is deployed on Elastic Cloud Hosted, Elastic Cloud Enterprise, Elastic Cloud on Kubernetes, and self-managed environments. This documentation corresponds to the latest patch available for each minor version. If you're not using the latest patch, check the release notes for changes. The Elastic Distribution of OpenTelemetry (EDOT) Java SDK collects performance metrics, traces, and logs in OpenTelemetry format, and sends them to Elastic Observability. Availability This functionality is generally available and ready for production usage. This documentation corresponds to the latest patch available for each minor version. If you're not using the latest patch, check the release notes for changes.
Serverless Observability
Generally available
Stack
Generally available
EDOT Java
Generally available
The EDOT Java agent is a distribution of OpenTelemetry Java Instrumentation agent. It inherits all the supported technologies of the OpenTelemetry Java Instrumentation.
Understanding auto-instrumentation scope
Auto-instrumentation automatically captures telemetry for the frameworks and libraries listed on this page. However, it cannot instrument:
- Custom or proprietary frameworks and libraries
- Closed-source components without instrumentation support
- Application-specific business logic
If your application uses technologies not covered by auto-instrumentation, you have two options:
- Native OpenTelemetry support — Some frameworks and libraries include built-in OpenTelemetry instrumentation provided by the vendor.
- Manual instrumentation — Use the OpenTelemetry API to add custom spans, metrics, and logs for unsupported components.
- Configuration-based instrumentation — Use the
otel.instrumentation.methods.includeoption to create spans around specific methods without modifying application code or dependencies.
The EDOT Java agent sends data through the OpenTelemetry protocol (OTLP). While OTLP ingest works with later 8.16+ versions of the EDOT Collector, for full support use either EDOT Collector versions 9.x or Elastic Cloud Serverless for OTLP ingest.
Refer to EDOT SDKs compatibility for support details.
Ingesting data from EDOT SDKs through EDOT Collector 9.x into Elastic Stack versions 8.18+ is supported.
The EDOT Java agent supports Java Virtual Machine (OpenJDK, OpenJ9) versions 8+. This follows from the OpenTelemetry supported JVMs.
The EDOT Java agent is compatible with all JVM languages supported by the JVM version 8 and higher.
The EDOT Java agent supports all the application servers documented by the OpenTelemetry Java agent.
The EDOT Java agent supports all the libraries and frameworks documented by the OpenTelemetry Java agent.
Note that some supported technologies are deactivated by default and need explicit configuration to be activated.
The EDOT Java agent also supports technologies listed here that are not available in the OpenTelemetry Java Instrumentation.
Refer to the EDOT Java agent configuration for defaults that might differ from the OpenTelemetry Java Instrumentation.