Loading

Technologies supported by the Elastic OTel Java Agent

The Elastic OTel Java agent is a distribution of OpenTelemetry Java Instrumentation agent. It inherits all the supported technologies of the OpenTelemetry Java Instrumentation.

Note

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:

  1. Native OpenTelemetry support — Some frameworks and libraries include built-in OpenTelemetry instrumentation provided by the vendor.
  2. Manual instrumentation — Use the OpenTelemetry API to add custom spans, metrics, and logs for unsupported components.
  3. Configuration-based instrumentation — Use the otel.instrumentation.methods.include option to create spans around specific methods without modifying application code or dependencies.

The Elastic OTel Java agent sends data through the OpenTelemetry protocol (OTLP). While OTLP ingest works with later 8.16+ versions of Elastic Agent, for full support use either Elastic Agent versions 9.x or Elastic Cloud Serverless for OTLP ingest.

Refer to Elastic OTel SDKs compatibility for support details.

Note

Ingesting data from Elastic OTel SDKs through Elastic Agent 9.x into Elastic Stack versions 8.18+ is supported.

The Elastic OTel Java agent supports Java Virtual Machine (OpenJDK, OpenJ9) versions 8+. This follows from the OpenTelemetry supported JVMs.

The Elastic OTel Java agent is compatible with all JVM languages supported by the JVM version 8 and higher.

The Elastic OTel Java agent supports all the application servers documented by the OpenTelemetry Java agent.

The Elastic OTel 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 Elastic OTel Java agent also supports technologies listed here that are not available in the OpenTelemetry Java Instrumentation.

Refer to the Elastic OTel Java agent configuration for defaults that might differ from the OpenTelemetry Java Instrumentation.