/tempo

Grafana Tempo is a high volume, minimal dependency trace storage.

Primary LanguageGoApache License 2.0Apache-2.0

Tempo Logo

Grafana Tempo is an open source, easy-to-use and high-scale distributed tracing backend. Tempo is cost-efficient, requiring only object storage to operate, and is deeply integrated with Grafana, Prometheus, and Loki. Tempo can be used with any of the open source tracing protocols, including Jaeger, Zipkin, and OpenTelemetry. It supports key/value lookup only and is designed to work in concert with logs and metrics (exemplars) for discovery.

Tempo is Jaeger, Zipkin, OpenCensus and OpenTelemetry compatible. It ingests batches in any of the mentioned formats, buffers them and then writes them to Azure, GCS, S3 or local disk. As such it is robust, cheap and easy to operate!

Getting Started

Further Reading

To learn more about Tempo, consult the following documents & talks:

Getting Help

If you have any questions or feedback regarding Tempo:

  • Ask a question on the Tempo Slack channel. To invite yourself to the Grafana Slack, visit https://slack.grafana.com/ and join the #tempo channel.
  • File an issue for bugs, issues and feature suggestions.
  • UI issues should be filed with Grafana.

OpenTelemetry

Tempo's receiver layer, wire format and storage format are all based directly on standards and code established by OpenTelemetry. We support open standards at Grafana!

Check out the Integration Guides to see examples of OpenTelemetry instrumentation with Tempo.

Other Components

tempo-query

tempo-query is jaeger-query with a hashicorp go-plugin to support querying Tempo. Please note that tempo only looks up a trace by ID. Searching for traces is not supported, and the service and operation lists will not populate.

tempo-vulture

tempo-vulture is tempo's bird themed consistency checking tool. It pushes traces and queries Tempo. It metrics 404s and traces with missing spans.

tempo-cli

tempo-cli is the place to put any utility functionality related to tempo. See Documentation for more info.

TempoDB

TempoDB is included in the this repository but is meant to be a stand alone key value database built on top of cloud object storage (azure/gcs/s3). It is a natively multitenant, supports a WAL and is the storage engine for Tempo.