{"id":13630858,"url":"https://github.com/open-telemetry/opentelemetry-java","last_synced_at":"2026-02-06T16:08:10.407Z","repository":{"id":37514129,"uuid":"172750723","full_name":"open-telemetry/opentelemetry-java","owner":"open-telemetry","description":"OpenTelemetry Java SDK","archived":false,"fork":false,"pushed_at":"2026-02-02T02:06:18.000Z","size":29731,"stargazers_count":2348,"open_issues_count":168,"forks_count":937,"subscribers_count":70,"default_branch":"main","last_synced_at":"2026-02-02T10:58:10.012Z","etag":null,"topics":["opentelemetry"],"latest_commit_sha":null,"homepage":"https://opentelemetry.io","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/open-telemetry.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"code-of-conduct.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2019-02-26T16:43:36.000Z","updated_at":"2026-02-02T09:16:42.000Z","dependencies_parsed_at":"2023-09-26T01:35:46.357Z","dependency_job_id":"b1224e0a-13b1-49a0-a5b7-4972f374c1d2","html_url":"https://github.com/open-telemetry/opentelemetry-java","commit_stats":{"total_commits":4188,"total_committers":248,"mean_commits":"16.887096774193548","dds":0.853629417382999,"last_synced_commit":"325822ce8527b83a09274c86a5123a214db80c1d"},"previous_names":[],"tags_count":92,"template":false,"template_full_name":null,"purl":"pkg:github/open-telemetry/opentelemetry-java","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-telemetry%2Fopentelemetry-java","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-telemetry%2Fopentelemetry-java/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-telemetry%2Fopentelemetry-java/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-telemetry%2Fopentelemetry-java/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/open-telemetry","download_url":"https://codeload.github.com/open-telemetry/opentelemetry-java/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-telemetry%2Fopentelemetry-java/sbom","scorecard":{"id":708570,"data":{"date":"2025-08-22T06:50:39Z","repo":{"name":"github.com/open-telemetry/opentelemetry-java","commit":"9631f5462b548a46c8bb3bd78cad06a0471da65f"},"scorecard":{"version":"v5.2.1","commit":"ab2f6e92482462fe66246d9e32f642855a691dc1"},"score":9.2,"checks":[{"name":"Code-Review","score":10,"reason":"all changesets reviewed","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#code-review"}},{"name":"Maintained","score":10,"reason":"30 commit(s) and 10 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#maintained"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: detected update tool: RenovateBot: .github/renovate.json5:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#dependency-update-tool"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#dangerous-workflow"}},{"name":"Token-Permissions","score":10,"reason":"GitHub workflow tokens follow principle of least privilege","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/backport.yml:15","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/benchmark-tags.yml:12","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/benchmark.yml:14","Info: jobLevel 'contents' permission set to 'read': .github/workflows/build-tracecontext-testsuite.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:23","Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql.yml:24","Info: jobLevel 'contents' permission set to 'read': .github/workflows/issue-management-feedback-label.yml:13","Info: jobLevel 'contents' permission set to 'read': .github/workflows/issue-management-stale-action.yml:14","Info: jobLevel 'contents' permission set to 'read': .github/workflows/owasp-dependency-check-daily.yml:40","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/prepare-patch-release.yml:11","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/prepare-release-branch.yml:28","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/prepare-release-branch.yml:85","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/release.yml:11","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/release.yml:138","Info: jobLevel 'contents' permission set to 'read': .github/workflows/reusable-open-issue-on-failure.yml:12","Info: jobLevel 'contents' permission set to 'read': .github/workflows/reusable-workflow-notification.yml:18","Info: topLevel 'contents' permission set to 'read': .github/workflows/backport.yml:10","Info: topLevel 'contents' permission set to 'read': .github/workflows/benchmark-tags.yml:7","Info: topLevel 'contents' permission set to 'read': .github/workflows/benchmark.yml:9","Info: topLevel 'contents' permission set to 'read': .github/workflows/build-tracecontext-testsuite.yml:13","Info: topLevel 'contents' permission set to 'read': .github/workflows/build.yml:16","Info: topLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:18","Info: topLevel 'contents' permission set to 'read': .github/workflows/fossa.yml:9","Info: topLevel 'contents' permission set to 'read': .github/workflows/gradle-wrapper-validation.yml:8","Info: topLevel 'contents' permission set to 'read': .github/workflows/issue-management-feedback-label.yml:8","Info: topLevel 'contents' permission set to 'read': .github/workflows/issue-management-stale-action.yml:9","Info: topLevel 'contents' permission set to 'read': .github/workflows/javadoc-crawler.yml:9","Info: topLevel permissions set to 'read-all': .github/workflows/ossf-scorecard.yml:11","Info: topLevel 'contents' permission set to 'read': .github/workflows/owasp-dependency-check-daily.yml:11","Info: topLevel 'contents' permission set to 'read': .github/workflows/prepare-patch-release.yml:6","Info: topLevel 'contents' permission set to 'read': .github/workflows/prepare-release-branch.yml:6","Info: topLevel 'contents' permission set to 'read': .github/workflows/release.yml:6","Info: topLevel 'contents' permission set to 'read': .github/workflows/reusable-markdown-link-check.yml:7","Info: topLevel 'contents' permission set to 'read': .github/workflows/reusable-misspell-check.yml:7","Info: topLevel 'contents' permission set to 'read': .github/workflows/reusable-open-issue-on-failure.yml:7","Info: topLevel 'contents' permission set to 'read': .github/workflows/reusable-workflow-notification.yml:13"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":8,"reason":"dependency not pinned by hash detected -- score normalized to 8","details":["Warn: pipCommand not pinned by hash: integration-tests/tracecontext/docker/Dockerfile:16","Warn: pipCommand not pinned by hash: integration-tests/tracecontext/tracecontext-integration-test.sh:10","Warn: pipCommand not pinned by hash: integration-tests/tracecontext/tracecontext-integration-test.sh:11","Info:  48 out of  48 GitHub-owned GitHubAction dependencies pinned","Info:  18 out of  18 third-party GitHubAction dependencies pinned","Info:   2 out of   2 containerImage dependencies pinned","Info:   0 out of   3 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#pinned-dependencies"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#vulnerabilities"}},{"name":"CII-Best-Practices","score":5,"reason":"badge detected: Passing","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#cii-best-practices"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#signed-releases"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/build-tracecontext-testsuite.yml:16"],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#packaging"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: Apache License 2.0: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#license"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#binary-artifacts"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#fuzzing"}},{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: github.com/open-telemetry/.github/SECURITY.md:1","Info: Found linked content: github.com/open-telemetry/.github/SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: github.com/open-telemetry/.github/SECURITY.md:1","Info: Found text in security policy: github.com/open-telemetry/.github/SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#security-policy"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during GetBranch(release/v1.53.x): error during branchesHandler.query: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#branch-protection"}},{"name":"SAST","score":10,"reason":"SAST tool is run on all commits","details":["Info: SAST configuration detected: CodeQL","Info: all commits (30) are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#sast"}},{"name":"CI-Tests","score":10,"reason":"30 out of 30 merged PRs checked by a CI test -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#ci-tests"}},{"name":"Contributors","score":10,"reason":"project has 59 contributing companies or organizations","details":["Info: found contributions from: Azure, DataDog, Dynatrace, aerospike, aerospike-community, apache, boardgamers, census-instrumentation, cloudera, cncf @linuxfoundation, datadog, dromara, dynatrace, dynatrace-oss, dynatrace-oss-contrib, earth, eclipse, elekto-io, finout, glowroot, google, grafana, grafana labs, hawkular, honeycombio, hypertrace, ibm, jaegertracing, javacontext, jboss-dockerfiles, jbossas, keptn, keptn-sandbox, kubernetes, kubernetes-sigs, lightstep @opentelemetry @opentracing, microsoft, mono, new relic, obs-nebula, observatorium, open-feature, open-telemetry, opencensus-integrations, openshift, opentracing, opentracing-contrib, os-observability, pjug, prometheus, propagationio, red hat, rhobs, sbt, snowflake, splunk, stolostron, tracingshift, w3c"],"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#contributors"}}]},"last_synced_at":"2025-08-22T07:28:27.309Z","repository_id":37514129,"created_at":"2025-08-22T07:28:27.309Z","updated_at":"2025-08-22T07:28:27.309Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29167871,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-06T15:38:29.831Z","status":"ssl_error","status_checked_at":"2026-02-06T15:37:48.592Z","response_time":59,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["opentelemetry"],"created_at":"2024-08-01T22:02:01.235Z","updated_at":"2026-02-06T16:08:10.400Z","avatar_url":"https://github.com/open-telemetry.png","language":"Java","readme":"# OpenTelemetry Java\n\n[![Release](https://img.shields.io/github/v/release/open-telemetry/opentelemetry-java?include_prereleases\u0026style=)](https://github.com/open-telemetry/opentelemetry-java/releases/)\n[![Coverage Status][codecov-image]][codecov-url]\n[![FOSSA License Status](https://app.fossa.com/api/projects/custom%2B162%2Fgithub.com%2Fopen-telemetry%2Fopentelemetry-java.svg?type=shield\u0026issueType=license)](https://app.fossa.com/projects/custom%2B162%2Fgithub.com%2Fopen-telemetry%2Fopentelemetry-java?ref=badge_shield\u0026issueType=license)\n[![FOSSA Security Status](https://app.fossa.com/api/projects/custom%2B162%2Fgithub.com%2Fopen-telemetry%2Fopentelemetry-java.svg?type=shield\u0026issueType=security)](https://app.fossa.com/projects/custom%2B162%2Fgithub.com%2Fopen-telemetry%2Fopentelemetry-java?ref=badge_shield\u0026issueType=security)\n[![OpenSSF Scorecard](https://api.scorecard.dev/projects/github.com/open-telemetry/opentelemetry-java/badge)](https://scorecard.dev/viewer/?uri=github.com/open-telemetry/opentelemetry-java)\n[![Reproducible Builds](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/jvm-repo-rebuild/reproducible-central/master/content/io/opentelemetry/java/badge.json)](https://github.com/jvm-repo-rebuild/reproducible-central/blob/master/content/io/opentelemetry/java/README.md)\n\n`opentelemetry-java` is the home of the Java implementation of the OpenTelemetry API for recording\ntelemetry, and SDK for managing telemetry recorded by the API.\n\nSee [opentelemetry.io Java Documentation](https://opentelemetry.io/docs/languages/java/intro/) for:\n\n* An overview of the OpenTelemetry Java ecosystem and key repositories\n* Detailed documentation on the components published from this repository\n* Review of instrumentation ecosystem, including OpenTelemetry Java agent\n* End-to-end working code examples\n* And more\n\n\u003e [!IMPORTANT]\n\u003e We are currently seeking additional contributors! See [help wanted](#help-wanted) for details.\n\n## Requirements\n\nUnless otherwise noted, all published artifacts support Java 8 or higher.\nSee [language version compatibility](VERSIONING.md#language-version-compatibility) for complete\ndetails.\n\n**Android Disclaimer:** For compatibility\nreasons, [library desugaring](https://developer.android.com/studio/write/java8-support#library-desugaring)\nmust be enabled.\n\nSee [contributing](#contributing) for details on building this project locally.\n\n## Releases\n\nReleases are published to maven central. We\npublish [minor releases monthly](RELEASING.md#release-cadence)\nand [patch releases as needed](RELEASING.md#preparing-a-new-patch-release).\n\nSee [releases](https://github.com/open-telemetry/opentelemetry-java/releases) for a listing of\nreleased versions and notes (see also [changelog](CHANGELOG.md)).\n\n## Artifacts\n\nThe artifacts published by this repository are summarized below in tables, organized in collapsible\nsections by topic.\n\nAs discussed in [compatibility](#compatibility), artifact versions must be kept in sync, for which\nwe strongly recommend [using one of our BOMs][dependencies-and-boms].\n\n\u003cdetails\u003e\n  \u003csummary\u003eBill of Materials (BOMs)\u003c/summary\u003e\n\nA bill of materials (or BOM) helps sync dependency versions of related artifacts.\n\n| Component                                    | Description                            | Artifact ID               | Version                                                     | Javadoc |\n|----------------------------------------------|----------------------------------------|---------------------------|-------------------------------------------------------------|---------|\n| [Bill of Materials (BOM)](./bom)             | Bill of materials for stable artifacts | `opentelemetry-bom`       | \u003c!--VERSION_STABLE--\u003e1.58.0\u003c!--/VERSION_STABLE--\u003e           | N/A     |\n| [Alpha Bill of Materials (BOM)](./bom-alpha) | Bill of materials for alpha artifacts  | `opentelemetry-bom-alpha` | \u003c!--VERSION_UNSTABLE--\u003e1.58.0-alpha\u003c!--/VERSION_UNSTABLE--\u003e | N/A     |\n\u003c/details\u003e\n\n\u003cdetails open\u003e\n  \u003csummary\u003eAPI\u003c/summary\u003e\n\nThe OpenTelemetry API for recording telemetry.\n\n| Component                         | Description                                                                          | Artifact ID                   | Version                                                     | Javadoc                                                                                                                                                               |\n|-----------------------------------|--------------------------------------------------------------------------------------|-------------------------------|-------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [API](./api/all)                  | OpenTelemetry API, including metrics, traces, baggage, context                       | `opentelemetry-api`           | \u003c!--VERSION_STABLE--\u003e1.58.0\u003c!--/VERSION_STABLE--\u003e           | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-api.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-api)                     |\n| [API  Incubator](./api/incubator) | API incubator, including pass through propagator, and extended tracer, and Event API | `opentelemetry-api-incubator` | \u003c!--VERSION_UNSTABLE--\u003e1.58.0-alpha\u003c!--/VERSION_UNSTABLE--\u003e | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-api-incubator.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-api-incubator) |\n| [Context API](./context)          | OpenTelemetry context API                                                            | `opentelemetry-context`       | \u003c!--VERSION_STABLE--\u003e1.58.0\u003c!--/VERSION_STABLE--\u003e           | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-context.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-context)             |\n| [Common](./common)                | Common utility methods used across API components                                    | `opentelemetry-common`        | \u003c!--VERSION_STABLE--\u003e1.58.0\u003c!--/VERSION_STABLE--\u003e           | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-common.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-common)               |\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eAPI Extensions\u003c/summary\u003e\n\nExtensions to the OpenTelemetry API.\n\n| Component                                                     | Description                                                                                                                                                                             | Artifact ID                                 | Version                                                     | Javadoc                                                                                                                                                                                           |\n|---------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------|-------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [Kotlin Extension](./extensions/kotlin)                       | Context extension for coroutines                                                                                                                                                        | `opentelemetry-extension-kotlin`            | \u003c!--VERSION_STABLE--\u003e1.58.0\u003c!--/VERSION_STABLE--\u003e           | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-extension-kotlin.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-extension-kotlin)                       |\n| [Trace Propagators Extension](./extensions/trace-propagators) | Trace propagators, including B3, Jaeger, OT Trace                                                                                                                                       | `opentelemetry-extension-trace-propagators` | \u003c!--VERSION_STABLE--\u003e1.58.0\u003c!--/VERSION_STABLE--\u003e           | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-extension-trace-propagators.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-extension-trace-propagators) |\n\u003c/details\u003e\n\n\u003cdetails open\u003e\n  \u003csummary\u003eSDK\u003c/summary\u003e\n\nThe OpenTelemetry SDK for managing telemetry producing by the API.\n\n| Component                    | Description                                            | Artifact ID                 | Version                                           | Javadoc                                                                                                                                                           |\n|------------------------------|--------------------------------------------------------|-----------------------------|---------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [SDK](./sdk/all)             | OpenTelemetry SDK, including metrics, traces, and logs | `opentelemetry-sdk`         | \u003c!--VERSION_STABLE--\u003e1.58.0\u003c!--/VERSION_STABLE--\u003e | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-sdk.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-sdk)                 |\n| [Metrics SDK](./sdk/metrics) | OpenTelemetry metrics SDK                              | `opentelemetry-sdk-metrics` | \u003c!--VERSION_STABLE--\u003e1.58.0\u003c!--/VERSION_STABLE--\u003e | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-sdk-metrics.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-sdk-metrics) |\n| [Trace SDK](./sdk/trace)     | OpenTelemetry trace SDK                                | `opentelemetry-sdk-trace`   | \u003c!--VERSION_STABLE--\u003e1.58.0\u003c!--/VERSION_STABLE--\u003e | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-sdk-trace.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-sdk-trace)     |\n| [Log SDK](./sdk/logs)        | OpenTelemetry log SDK                                  | `opentelemetry-sdk-logs`    | \u003c!--VERSION_STABLE--\u003e1.58.0\u003c!--/VERSION_STABLE--\u003e | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-sdk-logs.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-sdk-logs)       |\n| [SDK Common](./sdk/common)   | Shared SDK components                                  | `opentelemetry-sdk-common`  | \u003c!--VERSION_STABLE--\u003e1.58.0\u003c!--/VERSION_STABLE--\u003e | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-sdk-common.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-sdk-common)   |\n| [SDK Testing](./sdk/testing) | Components for testing OpenTelemetry instrumentation   | `opentelemetry-sdk-testing` | \u003c!--VERSION_STABLE--\u003e1.58.0\u003c!--/VERSION_STABLE--\u003e | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-sdk-testing.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-sdk-testing) |\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eSDK Exporters\u003c/summary\u003e\n\nSDK exporters for shipping traces, metrics, and logs out of process.\n\n| Component                                                             | Description                                                                  | Artifact ID                                          | Version                                                     | Javadoc                                                                                                                                                                                                             |\n|-----------------------------------------------------------------------|------------------------------------------------------------------------------|------------------------------------------------------|-------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [OTLP Exporters](./exporters/otlp/all)                                | OTLP gRPC \u0026 HTTP exporters, including traces, metrics, and logs              | `opentelemetry-exporter-otlp`                        | \u003c!--VERSION_STABLE--\u003e1.58.0\u003c!--/VERSION_STABLE--\u003e           | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-exporter-otlp.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-exporter-otlp)                                               |\n| [OTLP Logging Exporters](./exporters/logging-otlp)                    | Logging exporters in OTLP JSON encoding, including traces, metrics, and logs | `opentelemetry-exporter-logging-otlp`                | \u003c!--VERSION_STABLE--\u003e1.58.0\u003c!--/VERSION_STABLE--\u003e           | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-exporter-logging-otlp.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-exporter-logging-otlp)                               |\n| [OTLP Common](./exporters/otlp/common)                                | Shared OTLP components (internal)                                            | `opentelemetry-exporter-otlp-common`                 | \u003c!--VERSION_STABLE--\u003e1.58.0\u003c!--/VERSION_STABLE--\u003e           | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-exporter-otlp-common.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-exporter-otlp-common)                                 |\n| [Logging Exporter](./exporters/logging)                               | Logging exporters, including metrics, traces, and logs                       | `opentelemetry-exporter-logging`                     | \u003c!--VERSION_STABLE--\u003e1.58.0\u003c!--/VERSION_STABLE--\u003e           | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-exporter-logging.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-exporter-logging)                                         |\n| [Zipkin Exporter](./exporters/zipkin)                                 | Zipkin trace exporter                                                        | `opentelemetry-exporter-zipkin`                      | \u003c!--VERSION_STABLE--\u003e1.58.0\u003c!--/VERSION_STABLE--\u003e           | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-exporter-zipkin.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-exporter-zipkin)                                           |\n| [Prometheus Exporter](./exporters/prometheus)                         | Prometheus metric exporter                                                   | `opentelemetry-exporter-prometheus`                  | \u003c!--VERSION_UNSTABLE--\u003e1.58.0-alpha\u003c!--/VERSION_UNSTABLE--\u003e | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-exporter-prometheus.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-exporter-prometheus)                                   |\n| [Exporter Common](./exporters/common)                                 | Shared exporter components (internal)                                        | `opentelemetry-exporter-common`                      | \u003c!--VERSION_STABLE--\u003e1.58.0\u003c!--/VERSION_STABLE--\u003e           | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-exporter-common.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-exporter-common)                                           |\n| [OkHttp Sender](./exporters/sender/okhttp)                            | OkHttp implementation of HttpSender (internal)                               | `opentelemetry-exporter-sender-okhttp`               | \u003c!--VERSION_STABLE--\u003e1.58.0\u003c!--/VERSION_STABLE--\u003e           | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-exporter-sender-okhttp.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-exporter-sender-okhttp)                             |\n| [JDK Sender](./exporters/sender/jdk)                                  | Java 11+ native HttpClient implementation of HttpSender (internal)           | `opentelemetry-exporter-sender-jdk`                  | \u003c!--VERSION_STABLE--\u003e1.58.0\u003c!--/VERSION_STABLE--\u003e           | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-exporter-sender-jdk.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-exporter-sender-jdk)                                   |                                                                                                                                                            |\n| [gRPC ManagedChannel Sender](./exporters/sender/grpc-managed-channel) | gRPC ManagedChannel implementation of GrpcSender (internal)                  | `opentelemetry-exporter-sender-grpc-managed-channel` | \u003c!--VERSION_STABLE--\u003e1.58.0\u003c!--/VERSION_STABLE--\u003e           | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-exporter-sender-grpc-managed-channel.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-exporter-sender-grpc-managed-channel) |                                                                                                                                                            |\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eSDK Extensions\u003c/summary\u003e\n\nExtensions to the OpenTelemetry SDK.\n\n| Component                                                                     | Description                                                                        | Artifact ID                                         | Version                                                     | Javadoc                                                                                                                                                                                                           |\n|-------------------------------------------------------------------------------|------------------------------------------------------------------------------------|-----------------------------------------------------|-------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [SDK Autoconfigure](./sdk-extensions/autoconfigure)                           | Autoconfigure OpenTelemetry SDK from env vars, system properties, and SPI          | `opentelemetry-sdk-extension-autoconfigure`         | \u003c!--VERSION_STABLE--\u003e1.58.0\u003c!--/VERSION_STABLE--\u003e           | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-sdk-extension-autoconfigure.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-sdk-extension-autoconfigure)                 |\n| [SDK Autoconfigure SPI](./sdk-extensions/autoconfigure-spi)                   | Service Provider Interface (SPI) definitions for autoconfigure                     | `opentelemetry-sdk-extension-autoconfigure-spi`     | \u003c!--VERSION_STABLE--\u003e1.58.0\u003c!--/VERSION_STABLE--\u003e           | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-sdk-extension-autoconfigure-spi.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-sdk-extension-autoconfigure-spi)         |\n| [SDK Jaeger Remote Sampler Extension](./sdk-extensions/jaeger-remote-sampler) | Sampler which obtains sampling configuration from remote Jaeger server             | `opentelemetry-sdk-extension-jaeger-remote-sampler` | \u003c!--VERSION_STABLE--\u003e1.58.0\u003c!--/VERSION_STABLE--\u003e           | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-sdk-extension-jaeger-remote-sampler.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-sdk-extension-jaeger-remote-sampler) |\n| [SDK Incubator](./sdk-extensions/incubator)                                   | SDK incubator, including YAML based view configuration, LeakDetectingSpanProcessor | `opentelemetry-sdk-extension-incubator`             | \u003c!--VERSION_UNSTABLE--\u003e1.58.0-alpha\u003c!--/VERSION_UNSTABLE--\u003e | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-sdk-extension-incubator.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-sdk-extension-incubator)                         |\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eShims\u003c/summary\u003e\n\nShims for bridging data from one observability library to another.\n\n| Component                              | Description                                                  | Artifact ID                      | Version                                                     | Javadoc                                                                                                                                                                     |\n|----------------------------------------|--------------------------------------------------------------|----------------------------------|-------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [OpenCensus Shim](./opencensus-shim)   | Bridge opencensus metrics into the OpenTelemetry metrics SDK | `opentelemetry-opencensus-shim`  | \u003c!--VERSION_UNSTABLE--\u003e1.58.0-alpha\u003c!--/VERSION_UNSTABLE--\u003e | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-opencensus-shim.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-opencensus-shim)   |\n| [OpenTracing Shim](./opentracing-shim) | Bridge opentracing spans into the OpenTelemetry trace API    | `opentelemetry-opentracing-shim` | \u003c!--VERSION_STABLE--\u003e1.58.0\u003c!--/VERSION_STABLE--\u003e          | [![Javadocs](https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-opentracing-shim.svg)](https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-opentracing-shim) |\n\u003c/details\u003e\n\n### Verifying Artifacts\n\nAll artifacts published to Maven Central are signed with GPG key [`17A27CE7A60FF5F0`](https://keyserver.ubuntu.com/pks/lookup?op=get\u0026search=0x17A27CE7A60FF5F0) (fingerprint: `3F05 DDA9 F317 301E 9271 36D4 17A2 7CE7 A60F F5F0`).\n\n## Dependencies\n\nTo take a dependency, [include a BOM][dependencies-and-boms] and specify the dependency as follows,\nreplacing `{{artifact-id}}` with the value from the \"Artifact ID\" column\nfrom [artifacts](#artifacts):\n\n\u003cdetails open\u003e\n  \u003csummary\u003eGradle\u003c/summary\u003e\n\n```groovy\n  implementation('io.opentelemetry:{{artifact-id}}')\n```\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eMaven\u003c/summary\u003e\n\n```xml\n\u003cdependency\u003e\n  \u003cgroupId\u003eio.opentelemetry\u003c/groupId\u003e\n  \u003cartifactId\u003e{{artifact-id}}\u003c/artifactId\u003e\n\u003c/dependency\u003e\n```\n\u003c/details\u003e\n\n### Snapshots\n\nSnapshots of the `main` branch are available as follows:\n\n\u003cdetails open\u003e\n  \u003csummary\u003eGradle\u003c/summary\u003e\n\n```groovy\nrepositories {\n    maven { url 'https://central.sonatype.com/repository/maven-snapshots/' }\n}\n\ndependencies {\n  implementation platform(\"io.opentelemetry:opentelemetry-bom:1.59.0-SNAPSHOT\")\n  implementation('io.opentelemetry:opentelemetry-api')\n}\n```\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eMaven\u003c/summary\u003e\n\n```xml\n  \u003cproject\u003e\n    \u003crepositories\u003e\n      \u003crepository\u003e\n        \u003cid\u003esonatype-snapshot-repository\u003c/id\u003e\n        \u003curl\u003ehttps://central.sonatype.com/repository/maven-snapshots/\u003c/url\u003e\n      \u003c/repository\u003e\n    \u003c/repositories\u003e\n    \u003cdependencyManagement\u003e\n      \u003cdependencies\u003e\n        \u003cdependency\u003e\n          \u003cgroupId\u003eio.opentelemetry\u003c/groupId\u003e\n          \u003cartifactId\u003eopentelemetry-bom\u003c/artifactId\u003e\n          \u003cversion\u003e1.59.0-SNAPSHOT\u003c/version\u003e\n          \u003ctype\u003epom\u003c/type\u003e\n          \u003cscope\u003eimport\u003c/scope\u003e\n        \u003c/dependency\u003e\n      \u003c/dependencies\u003e\n    \u003c/dependencyManagement\u003e\n    \u003cdependencies\u003e\n      \u003cdependency\u003e\n        \u003cgroupId\u003eio.opentelemetry\u003c/groupId\u003e\n        \u003cartifactId\u003eopentelemetry-api\u003c/artifactId\u003e\n      \u003c/dependency\u003e\n    \u003c/dependencies\u003e\n  \u003c/project\u003e\n```\n\u003c/details\u003e\n\n## Compatibility\n\nArtifacts from this repository follow semantic versioning.\n\nStable artifacts (i.e. artifacts without `-alpha` version suffix) come with strong backwards\ncompatibility guarantees for public APIs.\n\nArtifacts may depend on other artifacts from this repository, and may depend on internal APIs (i.e.\nnon-public APIs) which are subject to change across minor versions. Therefore, it's critical to keep\nartifact versions in sync in order to avoid possible runtime exceptions. We strongly\nrecommend [using one of our BOMs][dependencies-and-boms] to assist in keeping artifacts in sync.\n\nSee the [VERSIONING.md](VERSIONING.md) for complete details on compatibility policy.\n\n## Contacting us\n\nWe hold regular meetings. See details at [community page](https://github.com/open-telemetry/community#implementation-sigs).\n\nTo report a bug, or request a new feature,\nplease [open an issue](https://github.com/open-telemetry/opentelemetry-java/issues/new/choose).\n\nWe use [GitHub Discussions](https://github.com/open-telemetry/opentelemetry-java/discussions)\nfor support or general questions. Feel free to drop us a line.\n\nWe are also present in the [`#otel-java`](https://cloud-native.slack.com/archives/C014L2KCTE3) channel in the [CNCF slack](https://slack.cncf.io/).\nPlease join us for more informal discussions.\n\n## Contributing\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md) for:\n\n* Details on building locally\n* Project scope\n* Keys to successful PRs\n* Guide to using gradle composite builds\n\n### Maintainers\n\n- [Jack Berg](https://github.com/jack-berg), Grafana Labs\n- [John Watson](https://github.com/jkwatson), Sublime Security\n\nFor more information about the maintainer role, see the [community repository](https://github.com/open-telemetry/community/blob/main/guides/contributor/membership.md#maintainer).\n\n### Approvers\n\n- [Gregor Zeitlinger](https://github.com/zeitlinger), Grafana Labs\n- [Jason Plumb](https://github.com/breedx-splk), Splunk\n- [Josh Suereth](https://github.com/jsuereth), Google\n- [Lauri Tulmin](https://github.com/laurit), Splunk\n- [Trask Stalnaker](https://github.com/trask), Microsoft\n\nFor more information about the approver role, see the [community repository](https://github.com/open-telemetry/community/blob/main/guides/contributor/membership.md#approver).\n\n### Triagers\n\nNone.\n\nFor more information about the triager role, see the [community repository](https://github.com/open-telemetry/community/blob/main/guides/contributor/membership.md#triager).\n\n### Emeritus\n\n- Maintainer [Bogdan Drutu](https://github.com/BogdanDrutu)\n- Maintainer [Carlos Alberto](https://github.com/carlosalberto)\n- Approver [Mateusz Rzeszutek](https://github.com/mateuszrzeszutek)\n\nFor more information about the emeritus role, see the [community repository](https://github.com/open-telemetry/community/blob/main/guides/contributor/membership.md#emeritus-maintainerapprovertriager).\n\n### Help wanted\n\nWe are currently resource constrained and are actively seeking new contributors interested in working towards [approver](https://github.com/open-telemetry/community/blob/main/guides/contributor/membership.md#approver) / [maintainer](https://github.com/open-telemetry/community/blob/main/guides/contributor/membership.md#maintainer) roles. In addition to the documentation for approver / maintainer roles and the [contributing](./CONTRIBUTING.md) guide, here are some additional notes on engaging:\n\n- [Pull request](https://github.com/open-telemetry/opentelemetry-java/pulls) 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.\n- Attending the [Java: SDK + Automatic Instrumentation](https://github.com/open-telemetry/community?tab=readme-ov-file#implementation-sigs) Special Interest Group (SIG) is a great way to get to know community members and learn about project priorities.\n- Issues labeled [help wanted](https://github.com/open-telemetry/opentelemetry-java/issues?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22) are project priorities. Code contributions (or pull request reviews when a PR is linked) for these issues are particularly important.\n- Triaging / responding to new issues and discussions is a great way to engage with the project.\n\n### Thanks to all of our contributors!\n\n\u003ca href=\"https://github.com/open-telemetry/opentelemetry-java/graphs/contributors\"\u003e\n  \u003cimg alt=\"Repo contributors\" src=\"https://contrib.rocks/image?repo=open-telemetry/opentelemetry-java\" /\u003e\n\u003c/a\u003e\n\n[codecov-image]: https://codecov.io/gh/open-telemetry/opentelemetry-java/branch/main/graph/badge.svg\n[codecov-url]: https://app.codecov.io/gh/open-telemetry/opentelemetry-java/branch/main/\n[dependencies-and-boms]: https://opentelemetry.io/docs/languages/java/intro/#dependencies-and-boms\n","funding_links":[],"categories":["Projects","Java","Recently Updated","分布式跟踪"],"sub_categories":["Monitoring","[Sep 15, 2024](/content/2024/09/15/README.md)"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopen-telemetry%2Fopentelemetry-java","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopen-telemetry%2Fopentelemetry-java","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopen-telemetry%2Fopentelemetry-java/lists"}