jaegertracing/jaeger

Gojaegertracing.io
macOSWindowsLinux

alternativa a DatadogNew RelicDynatrace

CNCF Jaeger, a Distributed Tracing Platform

distributed-tracingcncftracingobservabilityjaegeropentelemetryhacktoberfest
Crescimento de estrelas
Estrelas
23.2k
Forks
3.1k
Crescimento semanal
+28
Issues
381
10k20k
jan. de 2023mar. de 2024jun. de 2025set. de 2026
ArtefatosGo Modules
README

Stand With Ukraine

Slack chat Unit Tests Coverage Status Project+Community stats FOSSA Status OpenSSF Scorecard OpenSSF Best Practices CLOMonitor Artifact Hub

Jaeger - a Distributed Tracing System

💥💥💥 Jaeger v2 is out! Read the blog post and try it out.

Quick Start

Get Jaeger running in seconds with Docker:

# Run Jaeger all-in-one (includes UI, collector, query, and in-memory storage)
docker run --rm --name jaeger \
  -p 16686:16686 \
  -p 4317:4317 \
  -p 4318:4318 \
  jaegertracing/jaeger:latest

# Access the UI at http://localhost:16686
# Send traces via OTLP: gRPC on port 4317, HTTP on port 4318

For production deployments and more options, see the Getting Started Guide.

Architecture

graph TD
    SDK["OpenTelemetry SDK"] --> |HTTP or gRPC| COLLECTOR
    COLLECTOR["Jaeger Collector"] --> STORE[Storage]
    COLLECTOR --> |gRPC| PLUGIN[Storage Plugin]
    COLLECTOR --> |gRPC/sampling| SDK
    PLUGIN --> STORE
    QUERY[Jaeger Query Service] --> STORE
    QUERY --> |gRPC| PLUGIN
    UI[Jaeger UI] --> |HTTP| QUERY
    subgraph Application Host
        subgraph User Application
            SDK
        end
    end

Jaeger is a distributed tracing platform created by Uber Technologies and donated to Cloud Native Computing Foundation.

See Jaeger documentation for getting started, operational details, and other information.

Jaeger is hosted by the Cloud Native Computing Foundation (CNCF) as the 7th top-level project, graduated in October 2019. See the CNCF Jaeger incubation announcement and Jaeger graduation announcement.

Get Involved

Jaeger is an open source project with open governance. We welcome contributions from the community, and we would love your help to improve and extend the project. Here are some ideas for how to get involved. Many of them do not even require any coding.

Version Compatibility Guarantees

Since Jaeger uses many components from the OpenTelemetry Collector we try to maintain configuration compatibility between Jaeger releases. Occasionally, configuration options in Jaeger (or in Jaeger v1 CLI flags) can be deprecated due to usability improvements, new functionality, or changes in our dependencies. In such situations, developers introducing the deprecation are required to follow these guidelines.

In short, for a deprecated configuration option, you should expect to see the following message in the documentation or release notes:

(deprecated, will be removed after yyyy-mm-dd or in release vX.Y.Z, whichever is later)

A grace period of at least 3 months or two minor version bumps (whichever is later) from the first release containing the deprecation notice will be provided before the deprecated configuration option can be deleted.

For example, consider a scenario where v2.0.0 is released on 01-Sep-2024 containing a deprecation notice for a configuration option. This configuration option will remain in a deprecated state until the later of 01-Dec-2024 or v2.2.0 where it can be removed on or after either of those events. It may remain deprecated for longer than the aforementioned grace period.

Go Version Compatibility Guarantees

The Jaeger project attempts to track the currently supported versions of Go, as defined by the Go team. Removing support for an unsupported Go version is not considered a breaking change.

Starting with the release of Go 1.21, support for Go versions will be updated as follows:

  1. Soon after the release of a new Go minor version N, updates will be made to the build and tests steps to accommodate the latest Go minor version.
  2. Soon after the release of a new Go minor version N, support for Go version N-1 will be removed and version N will become the minimum required version.

Note: All importable code has been moved to internal packages, so there is no need to maintain backward compatibility with older compilers (previously version N-1 was used).

Storage Backend Version Support Policy

This policy covers storage backend versions only while they are reasonable for the project to test, maintain, and recommend for production use. Policy coverage is distinct from versions that may remain technically compatible with Jaeger.

For backends with a published upstream lifecycle, Jaeger bases its policy on the backend project's or vendor's supported-version or end-of-life policy, with the exact coverage defined below. Once upstream support ends, Jaeger may remove CI coverage, stop proactively fixing backend-specific issues for that version, and require users to upgrade before troubleshooting.

For backends without a clear upstream lifecycle, Jaeger supports the current stable major version and the immediately preceding major version. Older versions are best-effort only and may be removed when they block development, security fixes, dependency updates, or CI reliability.

Backend-specific policy:

  • Elasticsearch: follow Elastic's Product and Version End of Life Policy.
  • OpenSearch: follow the OpenSearch Release Schedule and Maintenance Policy. In practice, this means the current major version and the previous major version while they remain maintained.
  • Cassandra: follow Apache Cassandra's maintained release lines, as published on the Cassandra download page, with the Jaeger support target being the current major version and the previous major version.
  • ClickHouse: follow ClickHouse's release and backport policy and production guidance for stable and LTS releases. Jaeger treats LTS releases as its support lines and covers the current and previous LTS releases, which ClickHouse supports simultaneously for at least 12 months. Monthly stable releases may remain compatible or appear in CI but are not covered by this policy.

Support means backend versions are in scope for proactive compatibility fixes. CI coverage is not the definitive support matrix: it may test only a subset of supported versions and may retain older versions on a best-effort basis. CI coverage alone does not make a backend version supported. Jaeger does not provide support for the backend product itself, vendor-specific distributions, or versions outside the upstream maintenance window.

As of July 6, 2026, this policy means:

Backend Jaeger policy basis Versions covered by policy Versions not covered
Elasticsearch Elastic EOL policy 9.x; 8.19.x until Elastic's published 8.x maintenance window ends 8.18.x and earlier
OpenSearch OpenSearch maintenance policy 3.x; 2.x, with 2.19.x as the currently maintained 2.x line 1.x and earlier
Cassandra Current major plus previous major, using maintained Apache release lines 5.0.x; maintained 4.x lines, currently 4.1.x and 4.0.x 3.x and earlier
ClickHouse Current and previous ClickHouse LTS releases 26.3 LTS and 25.8 LTS Monthly stable releases and older LTS branches

This table is informational and should be refreshed when upstream policies or release lines change. Versions listed as not covered may still appear in CI on a best-effort basis; their presence in CI does not extend the support policy.

Components

Documentation

Building From Source

See CONTRIBUTING.

Contributing

See CONTRIBUTING.

Thanks to all the people who already contributed!

Maintainers

Rules for becoming a maintainer are defined in the GOVERNANCE document. The official maintainers of the Jaeger project are listed in the MAINTAINERS file. Please use @jaegertracing/jaeger-maintainers to tag them on issues / PRs.

Some repositories under jaegertracing org have additional maintainers.

Project Status Meetings

The Jaeger maintainers and contributors meet regularly on a video call. Everyone is welcome to join, including end users. For meeting details, see https://www.jaegertracing.io/get-in-touch/.

Roadmap

See https://www.jaegertracing.io/docs/roadmap/

Get in Touch

Have questions, suggestions, bug reports? Reach the project community via these channels:

Security

Third-party security audits of Jaeger are available in https://github.com/jaegertracing/security-audits. Please see Issue #1718 for the summary of available security mechanisms in Jaeger.

Adopters

Jaeger as a product consists of multiple components. We want to support different types of users, whether they are only using our instrumentation libraries or full end to end Jaeger installation, whether it runs in production or you use it to troubleshoot issues in development.

Please see ADOPTERS.md for some of the organizations using Jaeger today. If you would like to add your organization to the list, please comment on our survey issue.

Sponsors

The Jaeger project owes its success in open source largely to the Cloud Native Computing Foundation (CNCF), our primary supporter. We deeply appreciate their vital support. Furthermore, we are grateful to Uber for their initial, project-launching donation, and for the continuous contributions of software and infrastructure from 1Password, Codecov.io, Dosu, GitHub, Google Analytics, Netlify, and Oracle Cloud Infrastructure. Thank you for your generous support.

License

Copyright (c) The Jaeger Authors. Apache 2.0 License.

Repositórios relacionados
SigNoz/signoz

SigNoz is an open-source, OpenTelemetry-native observability platform for your team and their AI agents. Get logs, metrics, and traces in one tool with features like APM, distributed tracing, log management, infra monitoring, etc. Combined with SigNoz MCP and a native AI teammate (in SigNoz Cloud) it helps you build more resilient apps.

TypeScriptnpmOtherobservabilityapplication-monitoring
signoz.io
32k2.5k
apache/skywalking

APM, Application Performance Monitoring System

JavaMavenApache License 2.0skywalkingobservability
skywalking.apache.org
24.9k6.6k
openzipkin/zipkin

Zipkin is a distributed tracing system

JavaMavenApache License 2.0zipkindistributed-tracing
zipkin.io
17.5k3.1k
pinpoint-apm/pinpoint

APM, (Application Performance Management) tool for large-scale distributed systems.

JavaMavenApache License 2.0apmmonitoring
pinpoint-apm.gitbook.io
13.9k3.8k
quickwit-oss/quickwit

Cloud-native OSS search engine for observability

Rustcrates.ioApache License 2.0rustlog-management
quickwit.io
11.6k591
alibaba/transmittable-thread-local

📌 a missing Java std lib(simple & 0-dependency) for framework/middleware, provide an enhanced InheritableThreadLocal that transmits values between threads even using thread pooling components.

JavaMavenlibraryApache License 2.0javathreadlocal
github.com/alibaba/transmittable-thread-local
8.3k1.7k
coroot/coroot

Coroot is an open-source observability and APM tool with AI-powered Root Cause Analysis. It combines metrics, logs, traces, continuous profiling, and SLO-based alerting with predefined dashboards and inspections.

GoGo ModulesApache License 2.0dashboarddatabase-monitoring
coroot.com
7.9k397
grafana/tempo

Grafana Tempo is a high volume, minimal dependency distributed tracing backend.

GoGo ModulesGNU Affero General Public License v3.0distributed-tracinggrafana
grafana.com/oss/tempo/
5.5k750
uptrace/uptrace

Open source APM: OpenTelemetry traces, metrics, and logs

GoGo ModulesGNU Affero General Public License v3.0monitoringopentelemetry
uptrace.dev/get/hosted/open-source-apm
4.3k215
open-telemetry/opentelemetry-dotnet

The OpenTelemetry .NET Client

C#Apache License 2.0telemetrydistributed-tracing
opentelemetry.io
3.7k899
DataDog/datadog-agent

Main repository for Datadog Agent

GoGo ModulesApache License 2.0monitoringgo
docs.datadoghq.com
3.7k1.5k
open-telemetry/opentelemetry-js

OpenTelemetry JavaScript Client

TypeScriptnpmlibraryApache License 2.0telemetrydistributed-tracing
opentelemetry.io
3.5k1.2k