An open API service indexing awesome lists of open source software.

https://github.com/signalfx/splunk-otel-java

Splunk Distribution of OpenTelemetry Java
https://github.com/signalfx/splunk-otel-java

instrumentation java java-agent jvm metrics opentelemetry tracing

Last synced: 4 months ago
JSON representation

Splunk Distribution of OpenTelemetry Java

Awesome Lists containing this project

README

          

## Important
**Splunk OpenTelemetry Java Instrumentation 2.x** is available and recommended to collect and export
telemetry for Splunk Observability Cloud. Refer to the [official documentation](https://docs.splunk.com/observability/en/gdi/get-data-in/application/java/get-started.html)
for details.

---



Get Started
  •  
Get Involved
  •  
Migrate from SignalFx Java Agent


Stable

OpenTelemetry Instrumentation for Java Version


Splunk GDI specification


GitHub release (latest SemVer)


Maven Central


Build Status



About the distribution
  •  
Security
  •  
Supported Libraries
  •  
Troubleshooting

# Splunk Distribution of OpenTelemetry Java

The Splunk Distribution of [OpenTelemetry Instrumentation for
Java](https://github.com/open-telemetry/opentelemetry-java-instrumentation)
provides a Java Virtual Machine (JVM)
agent that automatically instruments your Java application to capture and report
distributed traces to [Splunk APM](https://quickdraw.splunk.com/redirect/?product=Observability&version=current&location=apm-intro).

This distribution comes with the following defaults:

- [W3C `tracecontext`](https://www.w3.org/TR/trace-context/) and [W3C
baggage](https://www.w3.org/TR/baggage/) context propagation;
[B3](https://github.com/openzipkin/b3-propagation) can also be
[configured](https://github.com/signalfx/splunk-otel-java/blob/main/docs/advanced-config.md#trace-propagation-configuration).
- [OTLP HTTP/protobuf
exporter](https://opentelemetry.io/docs/specs/otlp/#otlphttp)
configured to send spans to a locally running [Splunk OpenTelemetry
Collector](https://github.com/signalfx/splunk-otel-collector)
- Unlimited default limits for [configuration
options](docs/advanced-config.md#trace-configuration) to support
full-fidelity traces.

If you're currently using the SignalFx Java Agent and want to
migrate to the Splunk Distribution of OpenTelemetry Java,
see [Migrate from the SignalFx Java Agent](https://quickdraw.splunk.com/redirect/?product=Observability&version=current&location=java.otel.repo.migration).

---

The following documentation refers to the in-development version of `splunk-otel-java`. Docs for the latest version ([v2.19.0](https://github.com/signalfx/splunk-otel-java/releases/latest)) can be found [here](https://github.com/signalfx/splunk-otel-java/blob/v2.19.0/README.md).

---

## Requirements

The agent works with Java runtimes version 8 and higher. For the full list of requirements and supported libraries and versions, see [Requirements for the Java agent](https://quickdraw.splunk.com/redirect/?product=Observability&version=current&location=java.gdi.requirements) in the official Splunk documentation.

## Get started

For complete instructions on how to get started with the Splunk Distribution of OpenTelemetry Java, see [Instrument Java services for Observability Cloud](https://quickdraw.splunk.com/redirect/?product=Observability&version=current&location=learnmore.java.gdi) in the official Splunk documentation.

To see the Java Agent in action with sample applications, see the OpenTelemetry
[examples](https://github.com/open-telemetry/opentelemetry-java-examples/tree/main/javaagent).

## Advanced configuration

To fully configure the agent of the Splunk Distribution of OpenTelemetry Java, see [Configure the Java agent](https://quickdraw.splunk.com/redirect/?product=Observability&version=current&location=java.gdi.settings) in the official Splunk documentation.

## Correlating traces with logs

The Splunk Distribution of OpenTelemetry Java provides a way to correlate traces with logs. For more information see [Connect Java application trace data with logs](https://quickdraw.splunk.com/redirect/?product=Observability&version=current&location=java.gdi.correlate)
in the Splunk Observability Cloud user documentation.

## Manually instrument a Java application

Documentation on how to manually instrument a Java application is available in the
[OpenTelemetry official documentation](https://opentelemetry.io/docs/instrumentation/java/manual/).
To learn how to add custom metrics to your application see [Manual instrumentation](https://quickdraw.splunk.com/redirect/?product=Observability&version=current&location=java.gdi.custom.metrics).

To extend the instrumentation with the OpenTelemetry Instrumentation for Java,
you have to use a compatible API version.

The Splunk Distribution of OpenTelemetry Java version 2.19.0 is compatible
with:

* OpenTelemetry API version 1.53.0
* OpenTelemetry Instrumentation for Java version 2.19.0

## Snapshot builds

We publish [snapshot builds](https://central.sonatype.com/service/rest/repository/browse/maven-snapshots/com/splunk/splunk-otel-javaagent/2.20.0-SNAPSHOT/)
with every merge to the `main` branch. Snapshots are primarily intended to test new functionality and are not recommended
for production use.

## Upgrades

For information and best practices around upgrades, see the [Upgrading documentation](https://quickdraw.splunk.com/redirect/?product=Observability&version=current&location=java.gdi.upgrades).

## Troubleshooting

For troubleshooting information and known issues, see [Troubleshooting Java instrumentation](https://quickdraw.splunk.com/redirect/?product=Observability&version=current&location=java.gdi.troubleshooting)
in the Splunk Observability Cloud user documentation.

# License

The Splunk Distribution of OpenTelemetry Java is a distribution of [OpenTelemetry Instrumentation for Java](https://github.com/open-telemetry/opentelemetry-java-instrumentation). It is licensed under the terms of the Apache Software License version 2.0. For more details, see [the license file](./LICENSE).

>ℹ️  SignalFx was acquired by Splunk in October 2019. See [Splunk SignalFx](https://www.splunk.com/en_us/investor-relations/acquisitions/signalfx.html) for more information.