Java

Java A language-specific implementation of OpenTelemetry in Java.

This is the OpenTelemetry Java documentation. OpenTelemetry is an observability framework – an API, SDK, and tools that are designed to aid in the generation and collection of application telemetry data such as metrics, logs, and traces. This documentation is designed to help you understand how to get started using OpenTelemetry Java.

Status and Releases

The current status of the major functional components for OpenTelemetry Java is as follows:

TracesMetricsLogs
StableStableStable

For releases, including the latest release, see Releases.

Repositories

OpenTelemetry Java consists of the following repositories:

Components

See components for a complete list of published components.

Releases

Published releases are available on maven central. We strongly recommend using our BOM to keep the versions of the various components in sync.

Maven

<project>
  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>io.opentelemetry</groupId>
        <artifactId>opentelemetry-bom</artifactId>
        <version>1.42.0</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>io.opentelemetry</groupId>
      <artifactId>opentelemetry-api</artifactId>
    </dependency>
  </dependencies>
</project>

Gradle

dependencies {
  implementation(platform("io.opentelemetry:opentelemetry-bom:1.42.0"))
  implementation("io.opentelemetry:opentelemetry-api")
}

Configuration

Getting Started

Get telemetry for your app in less than 5 minutes!

Instrumentation

Manual instrumentation for OpenTelemetry Java

Using instrumentation libraries

Exporters

Resources

Performance

Performance reference for the OpenTelemetry Java agent

Sampling

API reference

Examples

Registry

Instrumentation libraries, exporters and other useful components for OpenTelemetry Java