About the Splunk Distribution of OpenTelemetry Java 🔗
The Splunk Distribution of OpenTelemetry Java is a wrapper for the OpenTelemetry Instrumentation for Java, an open source Java agent that dynamically injects bytecode to capture telemetry data.
With the agent you can automatically instrument any application written in a Java Virtual Machine (JVM) language, like Java and Groovy. See Java agent compatibility and requirements).
Features of the Splunk Distribution of OpenTelemetry Java 🔗
In addition to the features of the OpenTelemetry Instrumentation for Java, like bundled exporters and propagators, the agent provides additional custom features:
Sends trace and span data to Splunk Observability Cloud using the OTel Collector..
Collection of application and JVM metrics, which you can export to the Splunk Collector or Splunk ingest. See Application metrics.
AlwaysOn Profiling, which captures the call stack state for all JVM threads and sends them to Splunk Observability Cloud. See Introduction to AlwaysOn Profiling for Splunk APM and Java settings for AlwaysOn Profiling.
Instrumentation for HTTP server frameworks that returns server trace information in HTTP responses. See Server trace information.
Collection of data about application servers, stored as server span attributes. See WebEngine attributes.
Automatic injection of trace metadata into application logs. See Connect Java trace data with logs for Splunk Observability Cloud.
The agent of the Splunk Distribution of OpenTelemetry Java is supported by Splunk and is updated frequently, bringing bug fixes and new features to you before they are integrated in the upstream OTel repositories.
Use the Splunk Distribution of OpenTelemetry Java instead of the upstream OpenTelemetry instrumentation and OpenTelemetry SDK. Splunk supports only upstream OTel components as part of the Splunk Distribution of OpenTelemetry Java.
Release types 🔗
The Splunk Distribution of OpenTelemetry Java has two release channels: stable releases and snapshots.
Stable releases 🔗
The stable version of the Splunk Distribution of OpenTelemetry Java is released every 4 weeks, within 5 working days of the OTel Java instrumentation release. Fast releases ensure that all new features and fixes coming from upstream are incorporated into the Splunk platform distribution.
To browse the release notes, see the changelog on GitHub.
Snapshot releases 🔗
Snapshot releases contain the latest fixes and features developed for Splunk Observability Cloud, so that you can test them without having to wait for the stable release.
To access the latest snapshot releases, see the Splunk Observability Cloud snapshot repository.
Snapshot releases are not supported by Splunk. Use them only for testing new fixes and features before the stable release.
Defaults of the Splunk Distribution of OpenTelemetry Java 🔗
The Splunk Distribution of OpenTelemetry Java has the following default settings for context propagation, exporters, and trace settings:
W3C tracecontext and W3C baggage context propagation is enabled by default. See Propagators configuration.
The OTLP gRPC exporter is configured by default to send spans to the local Splunk OpenTelemetry Collector.
Unlimited defaults for trace configuration to support full-fidelity tracing. See Trace configuration.
Performance overhead of the Splunk OTel Java agent 🔗
The Splunk OTel Java Agent has minimal impact on system performance when instrumenting Java Virtual Machine (JVM) applications. See Performance overhead of the Splunk OTel Java agent for more information.
Support for previous versions 🔗
Splunk is committed to supporting all customers who use this distribution. All major versions of Splunk OpenTelemetry distributions receive critical patches for one year after the next major release. Splunk stops feature development on a major release after it introduces the next major release.
For more information on versioning of the Splunk Distribution of OpenTelemetry Java, see the versioning guidelines on GitHub.
How to contribute 🔗
The Splunk Distribution of OpenTelemetry Java is open-source software. You can contribute to its improvement by creating pull requests in GitHub. To learn more, see the contributing guidelines on GitHub.