Docs » Instrument back-end applications to send spans to Splunk APM » Instrument Java applications for Splunk Observability Cloud » Java agent compatibility and requirements

Java agent compatibility and requirements 🔗

Meet the following requirements to instrument Java applications for Splunk Observability Cloud:

Supported libraries and frameworks 🔗

The Splunk Distribution of OpenTelemetry Java instruments numerous libraries, frameworks, and application servers. For a complete list of supported libraries and frameworks, see Supported libraries in the OpenTelemetry documentation.

For custom metrics support, you must use MicroMeter 1.5 and higher. See Send custom Java application metrics.

Note

To deactivate specific instrumentations, see Library instrumentation issues.

Ensure you are using supported Java and JVM versions 🔗

The agent of the Splunk Distribution of OpenTelemetry Java supports the following Java versions:

  • Java 8 starting from 8u40 (8u262 for AlwaysOn Profiling)

  • Java 11

  • Java 17 and higher LTS versions

The following Java Virtual Machines (JVMs) are supported:

  • AdoptOpenJDK

  • Amazon Corretto

  • Azul Zulu

  • BellSoft Liberica JDK

  • Eclipse Adoptium/Temurin

  • IBM J9 (AlwaysOn Profiling is not supported)

  • Microsoft OpenJDK

  • Oracle OpenJDK

  • Red Hat OpenJDK

  • SAP SapMachine

Note

Splunk Observability Cloud officially supports Java and Groovy as JVM languages. You can instrument applications written in other JVM languages, but the quality of the telemetry data is not guaranteed.

Install and configure the Splunk Distribution of OpenTelemetry Collector 🔗

The Splunk Distribution of OpenTelemetry Java exports application and JVM metrics and spans to the Splunk Distribution of OpenTelemetry Collector, which also collects system metric data and logs, including profiling data.

To send application traces and spans to Observability Cloud, install the Splunk Distribution of OpenTelemetry Collector for your platform. The following distributions are available: