GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - open-telemetry/opentelemetry-java: OpenTelemetry Java SDK

BranchesTags
Open more actions menu

Latest commit

 

History

5,735 Commits
5,735 Commits

Folders and files

NameName
Last commit message
Last commit date
.github
.github
 
 
all
all
 
 
animal-sniffer-signature
animal-sniffer-signature
 
 
api
api
 
 
bom-alpha
bom-alpha
 
 
bom
bom
 
 
buildSrc
buildSrc
 
 
buildscripts
buildscripts
 
 
common
common
 
 
context
context
 
 
custom-checks
custom-checks
 
 
dependencyManagement
dependencyManagement
 
 
docs
docs
 
 
exporters
exporters
 
 
extensions
extensions
 
 
gradle/wrapper
gradle/wrapper
 
 
integration-tests
integration-tests
 
 
javadoc-crawler
javadoc-crawler
 
 
opencensus-shim
opencensus-shim
 
 
opentelemetry-jfr-profiles-shim
opentelemetry-jfr-profiles-shim
 
 
opentracing-shim
opentracing-shim
 
 
perf-harness
perf-harness
 
 
sdk-extensions
sdk-extensions
 
 
sdk
sdk
 
 
testing-internal
testing-internal
 
 
.clomonitor.yml
.clomonitor.yml
 
 
.codecov.yaml
.codecov.yaml
 
 
.editorconfig
.editorconfig
 
 
.fossa.yml
.fossa.yml
 
 
.gitattributes
.gitattributes
 
 
.gitignore
.gitignore
 
 
AGENTS.md
AGENTS.md
 
 
CHANGELOG.md
CHANGELOG.md
 
 
CONTRIBUTING.md
CONTRIBUTING.md
 
 
LICENSE
LICENSE
 
 
QUICKSTART.md
QUICKSTART.md
 
 
README.md
README.md
 
 
RELEASING.md
RELEASING.md
 
 
VERSIONING.md
VERSIONING.md
 
 
build.gradle.kts
build.gradle.kts
 
 
code-of-conduct.md
code-of-conduct.md
 
 
gradle.properties
gradle.properties
 
 
gradlew
gradlew
 
 
gradlew.bat
gradlew.bat
 
 
mise.toml
mise.toml
 
 
settings.gradle.kts
settings.gradle.kts
 
 
version.gradle.kts
version.gradle.kts
 
 

Repository files navigation

OpenTelemetry Java

Release Coverage Status FOSSA License Status FOSSA Security Status OpenSSF Scorecard Reproducible Builds

opentelemetry-java is the home of the Java implementation of the OpenTelemetry API for recording telemetry, and SDK for managing telemetry recorded by the API.

See opentelemetry.io Java Documentation for:

  • An overview of the OpenTelemetry Java ecosystem and key repositories
  • Detailed documentation on the components published from this repository
  • Review of instrumentation ecosystem, including OpenTelemetry Java agent
  • End-to-end working code examples
  • And more

Important

We are currently seeking additional contributors! See help wanted for details.

Requirements

Unless otherwise noted, all published artifacts support Java 8 or higher. See language version compatibility for complete details.

Android Disclaimer: For compatibility reasons, library desugaring must be enabled.

See contributing for details on building this project locally.

Releases

Releases are published to maven central. We publish minor releases monthly and patch releases as needed.

See releases for a listing of released versions and notes (see also changelog).

Artifacts

The artifacts published by this repository are summarized below in tables, organized in collapsible sections by topic.

As discussed in compatibility, artifact versions must be kept in sync, for which we strongly recommend using one of our BOMs.

Bill of Materials (BOMs)

A bill of materials (or BOM) helps sync dependency versions of related artifacts.

Component Description Artifact ID Version Javadoc
Bill of Materials (BOM) Bill of materials for stable artifacts opentelemetry-bom 1.68.0 N/A
Alpha Bill of Materials (BOM) Bill of materials for alpha artifacts opentelemetry-bom-alpha 1.68.0-alpha N/A
API

The OpenTelemetry API for recording telemetry.

Component Description Artifact ID Version Javadoc
API OpenTelemetry API, including metrics, traces, baggage, context opentelemetry-api 1.68.0 Javadocs
API Incubator API incubator, including pass through propagator and extended tracer opentelemetry-api-incubator 1.68.0-alpha Javadocs
Context API OpenTelemetry context API opentelemetry-context 1.68.0 Javadocs
Common Common utility methods used across API components opentelemetry-common 1.68.0 Javadocs
API Extensions

Extensions to the OpenTelemetry API.

Component Description Artifact ID Version Javadoc
Kotlin Extension Context extension for coroutines opentelemetry-extension-kotlin 1.68.0 Javadocs
Trace Propagators Extension Trace propagators, including B3, Jaeger, OT Trace opentelemetry-extension-trace-propagators 1.68.0 Javadocs
SDK

The OpenTelemetry SDK for managing telemetry producing by the API.

Component Description Artifact ID Version Javadoc
SDK OpenTelemetry SDK, including metrics, traces, and logs opentelemetry-sdk 1.68.0 Javadocs
Metrics SDK OpenTelemetry metrics SDK opentelemetry-sdk-metrics 1.68.0 Javadocs
Trace SDK OpenTelemetry trace SDK opentelemetry-sdk-trace 1.68.0 Javadocs
Log SDK OpenTelemetry log SDK opentelemetry-sdk-logs 1.68.0 Javadocs
Profiles SDK OpenTelemetry profiles SDK opentelemetry-sdk-profiles 1.68.0-alpha Javadocs
SDK Common Shared SDK components opentelemetry-sdk-common 1.68.0 Javadocs
SDK Testing Components for testing OpenTelemetry instrumentation opentelemetry-sdk-testing 1.68.0 Javadocs
SDK Exporters

SDK exporters for shipping traces, metrics, and logs out of process.

Component Description Artifact ID Version Javadoc
OTLP Exporters OTLP gRPC & HTTP exporters, including traces, metrics, and logs opentelemetry-exporter-otlp 1.68.0 Javadocs
OTLP Profiles Exporter OTLP profiles exporter opentelemetry-exporter-otlp-profiles 1.68.0-alpha Javadocs
OTLP Logging Exporters Logging exporters in OTLP JSON encoding, including traces, metrics, and logs opentelemetry-exporter-logging-otlp 1.68.0 Javadocs
OTLP Common Shared OTLP components (internal) opentelemetry-exporter-otlp-common 1.68.0 Javadocs
Logging Exporter Logging exporters, including metrics, traces, and logs opentelemetry-exporter-logging 1.68.0 Javadocs
Prometheus Exporter Prometheus metric exporter opentelemetry-exporter-prometheus 1.68.0-alpha Javadocs
Exporter Common Shared exporter components (internal) opentelemetry-exporter-common 1.68.0 Javadocs
OkHttp Sender OkHttp implementation of HttpSender (internal) opentelemetry-exporter-sender-okhttp 1.68.0 Javadocs
JDK Sender Java 11+ native HttpClient implementation of HttpSender (internal) opentelemetry-exporter-sender-jdk 1.68.0 Javadocs
gRPC ManagedChannel Sender gRPC ManagedChannel implementation of GrpcSender (internal) opentelemetry-exporter-sender-grpc-managed-channel 1.68.0 Javadocs
SDK Extensions

Extensions to the OpenTelemetry SDK.

Component Description Artifact ID Version Javadoc
SDK Autoconfigure Autoconfigure OpenTelemetry SDK from env vars, system properties, and SPI opentelemetry-sdk-extension-autoconfigure 1.68.0 Javadocs
SDK Autoconfigure SPI Service Provider Interface (SPI) definitions for autoconfigure opentelemetry-sdk-extension-autoconfigure-spi 1.68.0 Javadocs
SDK Declarative Config Declarative config implementation for YAML-based SDK configuration opentelemetry-sdk-extension-declarative-config 1.68.0-alpha Javadocs
SDK Jaeger Remote Sampler Extension Sampler which obtains sampling configuration from remote Jaeger server opentelemetry-sdk-extension-jaeger-remote-sampler 1.68.0 Javadocs
SDK Incubator SDK incubator, including YAML based view configuration, LeakDetectingSpanProcessor opentelemetry-sdk-extension-incubator 1.68.0-alpha Javadocs
Shims

Shims for bridging data from one observability library to another.

Component Description Artifact ID Version Javadoc
OpenCensus Shim DEPRECATED Bridge opencensus metrics into the OpenTelemetry metrics SDK opentelemetry-opencensus-shim 1.68.0-alpha Javadocs
OpenTracing Shim DEPRECATED Bridge opentracing spans into the OpenTelemetry trace API opentelemetry-opentracing-shim 1.68.0 Javadocs

Verifying Artifacts

All artifacts published to Maven Central are signed with GPG key 17A27CE7A60FF5F0 (fingerprint: 3F05 DDA9 F317 301E 9271 36D4 17A2 7CE7 A60F F5F0).

Dependencies

To take a dependency, include a BOM and specify the dependency as follows, replacing {{artifact-id}} with the value from the "Artifact ID" column from artifacts:

Gradle
  implementation('io.opentelemetry:{{artifact-id}}')
Maven
<dependency>
  <groupId>io.opentelemetry</groupId>
  <artifactId>{{artifact-id}}</artifactId>
</dependency>

Snapshots

Snapshots of the main branch are available as follows:

Gradle
repositories {
    maven { url 'https://central.sonatype.com/repository/maven-snapshots/' }
}

dependencies {
  implementation platform("io.opentelemetry:opentelemetry-bom:1.69.0-SNAPSHOT")
  implementation('io.opentelemetry:opentelemetry-api')
}
Maven
  <project>
    <repositories>
      <repository>
        <id>sonatype-snapshot-repository</id>
        <url>https://central.sonatype.com/repository/maven-snapshots/</url>
      </repository>
    </repositories>
    <dependencyManagement>
      <dependencies>
        <dependency>
          <groupId>io.opentelemetry</groupId>
          <artifactId>opentelemetry-bom</artifactId>
          <version>1.69.0-SNAPSHOT</version>
          <type>pom</type>
          <scope>import</scope>
        </dependency>
      </dependencies>
    </dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>io.opentelemetry</groupId>
        <artifactId>opentelemetry-api</artifactId>
      </dependency>
    </dependencies>
  </project>

Compatibility

Artifacts from this repository follow semantic versioning.

Stable artifacts (i.e. artifacts without -alpha version suffix) come with strong backwards compatibility guarantees for public APIs.

Artifacts may depend on other artifacts from this repository, and may depend on internal APIs (i.e. non-public APIs) which are subject to change across minor versions. Therefore, it's critical to keep artifact versions in sync in order to avoid possible runtime exceptions. We strongly recommend using one of our BOMs to assist in keeping artifacts in sync.

See the VERSIONING.md for complete details on compatibility policy.

Contacting us

We hold regular meetings. See details at community page.

The meeting is open for all to join. We invite everyone to join our meeting, regardless of your experience level. Whether you're a seasoned OpenTelemetry developer, just starting your journey, or simply curious about the work we do, you're more than welcome to participate!

To report a bug, or request a new feature, please open an issue.

We use GitHub Discussions for support or general questions. Feel free to drop us a line.

We are also present in the #otel-java channel in the CNCF slack. Please join us for more informal discussions.

Contributing

See CONTRIBUTING.md for:

  • Details on building locally
  • Project scope
  • Keys to successful PRs
  • Guide to using gradle composite builds

Maintainers

  • Jack Berg, Grafana Labs
  • John Watson, Sublime Security

For more information about the maintainer role, see the community repository.

Approvers

  • Gregor Zeitlinger, Grafana Labs
  • Jason Plumb, Splunk
  • Jay DeLuca, Grafana Labs
  • Lauri Tulmin, Splunk
  • Pranav Sharma, Google
  • Trask Stalnaker, Microsoft

For more information about the approver role, see the community repository.

Triagers

None.

For more information about the triager role, see the community repository.

Emeritus

  • Bogdan Drutu, Maintainer
  • Carlos Alberto, Maintainer
  • Josh Suereth, Approver
  • Mateusz Rzeszutek, Approver

For more information about the emeritus role, see the community repository.

Help wanted

We are currently resource constrained and are actively seeking new contributors interested in working towards approver / maintainer roles. In addition to the documentation for approver / maintainer roles and the contributing guide, here are some additional notes on engaging:

  • Pull request reviews are equally or more helpful than code contributions. Comments and approvals are valuable with or without a formal project role. They're also a great forcing function to explore a fairly complex codebase.
  • Attending the Java: SDK + Automatic Instrumentation Special Interest Group (SIG) is a great way to get to know community members and learn about project priorities.
  • Issues labeled help wanted are project priorities. Code contributions (or pull request reviews when a PR is linked) for these issues are particularly important.
  • Triaging / responding to new issues and discussions is a great way to engage with the project.

Thanks to all of our contributors!

Repo contributors

About

OpenTelemetry Java SDK

opentelemetry.io

Topics

opentelemetry

Resources

Readme
Apache-2.0 license

Code of conduct

Code of conduct

Contributing

Contributing

Security policy

Security policy
Activity
Custom properties

Stars

2.5k stars

Watchers

72 watching

Forks

1.1k forks
Report repository

Releases

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.