# open-telemetry/opentelemetry-java-instrumentation

OpenTelemetry auto-instrumentation and instrumentation libraries for Java

Repository: https://github.com/open-telemetry/opentelemetry-java-instrumentation
Canonical: https://ross.abutalabs.com/products/opentelemetry-java-instrumentation
Homepage: https://opentelemetry.io
Language: Java
License: Apache-2.0
License Family: permissive
Last push: 2026-08-26T22:05:45+00:00

## Health v2 (maintenance only)
Score: 99/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 99, release rhythm 99, longevity 100
- inputs: {"age_days": 2534, "days_push": 7, "days_rel": 10, "gap_med": 26.0, "n_releases_24m": 33}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 2612, forks 1142 (observed 2026-08-28T04:07:04.472252+00:00)

## What it is
OpenTelemetry auto-instrumentation for Java, providing a Java agent JAR that attaches to any Java 8+ application and injects bytecode to capture traces, metrics, and logs from popular libraries and frameworks without code changes. It also publishes standalone instrumentation libraries for those who prefer manual integration over the agent.

## Use cases
- add distributed tracing to a Java app without code changes
- instrument Spring Boot HTTP and database calls automatically
- export traces and metrics to Jaeger or Prometheus
- capture telemetry from Kafka and gRPC calls in Java services
- zero-code observability for legacy Java 8 applications
- correlate logs with traces via MDC auto-instrumentation
- extend the agent with custom instrumentation

## When to choose
- you want out-of-the-box tracing, metrics, and logs for Java services with minimal effort
- you cannot or do not want to modify application source code
- you use popular Java frameworks and libraries covered by the supported list
- you need vendor-neutral telemetry exportable to any observability backend

## When to avoid
- you need a non-JVM language's instrumentation
- you require a full observability backend with storage and visualization, since this only generates telemetry
- you need fine-grained control over every span and prefer fully manual instrumentation APIs
- your runtime or framework is unsupported by the agent

## Facets
- artifact type: library
- maturity: active
- function: monitoring, tracing, logging, middleware, developer-tools
- domain: monitoring, microservices
- platform: jvm, cross-platform, cloud
- tags: opentelemetry, java-agent, auto-instrumentation, telemetry, apm, distributed-tracing, metrics, observability, bytecode-instrumentation, otlp, devops, docker, kubernetes

## Member repositories
- open-telemetry/opentelemetry-java-instrumentation (main) score 99

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:07:04.472252+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T02:20:39.066719+00:00, confidence not recorded.
  - readme: https://github.com/open-telemetry/opentelemetry-java-instrumentation (fetched 2026-08-28T04:07:04.472252+00:00, sha 30694b80e0a1)
  - homepage: https://opentelemetry.io (fetched 2026-08-29T10:03:36.271456+00:00, sha 51756d27c4f1)
  - site_page: https://opentelemetry.io/docs (fetched 2026-08-29T10:03:36.280727+00:00, sha 06566227bba9)
  - site_page: https://opentelemetry.io/docs/what-is-opentelemetry (fetched 2026-08-29T10:03:36.282483+00:00, sha dd58475f7d30)
  - site_page: https://opentelemetry.io/docs/demo (fetched 2026-08-29T10:03:36.284212+00:00, sha 03a34a004b8f)
  - site_page: https://opentelemetry.io/docs/concepts/signals/traces (fetched 2026-08-29T10:03:36.285819+00:00, sha 123b7f8bc630)
  - site_page: https://opentelemetry.io/docs/concepts/signals/metrics (fetched 2026-08-29T10:03:36.287744+00:00, sha 5fe9fc342c92)
  - site_page: https://opentelemetry.io/docs/concepts/signals/logs (fetched 2026-08-29T10:03:36.289490+00:00, sha 126e1fa6c0a2)
  - site_page: https://opentelemetry.io/docs/concepts/signals/baggage (fetched 2026-08-29T10:03:36.291118+00:00, sha fc18d0d07d4b)
  - site_page: https://opentelemetry.io/docs/concepts/instrumentation/zero-code (fetched 2026-08-29T10:03:36.292606+00:00, sha c811260b8c51)
- Data as of 2026-08-30T08:39:29.467469+00:00.
