Skip to content

open-telemetry/opentelemetry-java-contrib

Folders and files

NameName
Last commit message
Last commit date
Apr 11, 2025
Feb 6, 2025
Feb 20, 2025
Mar 14, 2025
Dec 19, 2024
Feb 22, 2025
Apr 3, 2025
Apr 11, 2025
Feb 7, 2025
Feb 21, 2025
Mar 17, 2025
Jun 30, 2021
Mar 21, 2025
Apr 11, 2025
Mar 10, 2025
Jan 20, 2022
Mar 6, 2025
Mar 18, 2025
Mar 7, 2025
Feb 20, 2025
Mar 21, 2025
Dec 20, 2024
Apr 1, 2025
Mar 13, 2025
Jan 10, 2025
Mar 21, 2025
Mar 14, 2025
Dec 20, 2024
Sep 26, 2024
Apr 9, 2025
Oct 13, 2023
Dec 8, 2024
Mar 31, 2025
Mar 14, 2025
Oct 17, 2024
Feb 12, 2025
Jan 18, 2023
Feb 10, 2025
Aug 20, 2020
May 10, 2022
Apr 11, 2025
Feb 21, 2025
Aug 17, 2020
Feb 20, 2025
Dec 14, 2024
Aug 16, 2023
Jan 16, 2023
Mar 7, 2025
Jul 18, 2024
Apr 9, 2025
Apr 11, 2025

OpenTelemetry Java Contrib

Release FOSSA License Status FOSSA Security Status OpenSSF Scorecard Slack

This project is intended to provide helpful libraries and standalone OpenTelemetry-based utilities that don't fit the express scope of the OpenTelemetry Java or Java Instrumentation projects. If you need an easier way to bring observability to remote JVM-based applications and workflows that isn't easily satisfied by an SDK feature or via instrumentation, this project is hopefully for you.

Provided Libraries

Status* Library
beta AWS Resources
stable AWS X-Ray SDK Support
alpha AWS X-Ray Propagator
alpha Baggage Processors
alpha zstd Compressor
alpha Consistent Sampling
alpha Disk Buffering
alpha GCP Authentication Extension
beta GCP Resources
beta Inferred Spans
alpha JFR Connection
alpha JFR Events
alpha JMX Metric Gatherer
alpha JMX Metric Scraper
alpha Kafka Support
alpha OpenTelemetry Maven Extension
alpha Micrometer MeterProvider
alpha No-Op API
alpha Intercept and Process Signals Globally
alpha Prometheus Client Bridge
alpha Resource Providers
alpha Runtime Attach
alpha Samplers
beta Span Stacktrace Capture

* alpha, beta and stable are currently used to denote library status per otep 0232. To reach stable status, the library needs to have stable APIs, stable semantic conventions, and be production ready. On reaching stable status, the otel.stable value in gradle.properties should be set to true. Note that currently all the libraries are released together with the version of this repo, so breaking changes (after stable status is reached) would bump the major version of all libraries together. This could get complicated so stable has a high bar.

Getting Started

# Apply formatting
$ ./gradlew spotlessApply

# Build the complete project
$ ./gradlew build

# Run integration tests
$ ./gradlew integrationTest

# Clean artifacts
$ ./gradlew clean

Contributing

The Java Contrib project was initially formed to provide methods of easy remote JMX metric gathering and reporting, which is actively in development. If you have an idea for a similar use case in the metrics, traces, or logging domain we would be very interested in supporting it. Please open an issue to share your idea or suggestion. PRs are always welcome and greatly appreciated, but for larger functional changes a pre-coding introduction can be helpful to ensure this is the correct place and that active or conflicting efforts don't exist.

Triagers (@open-telemetry/java-contrib-triagers):

Approvers (@open-telemetry/java-contrib-approvers):

Maintainers (@open-telemetry/java-contrib-maintainers):

Emeritus maintainers:

Learn more about roles in the community repository.

Thanks to all the people who already contributed!