Tracing for a distributed world
Grafana Traces (powered by Tempo) provides an easy-to-use, highly scalable, and cost-effective distributed tracing backend. Not indexing the traces makes it possible to store orders of magnitude more trace data for the same cost, and removes the need for sampling.
Why use Grafana for traces?
Performance at scale
- Stores orders of magnitude more trace data for the same cost, and removes the need for sampling.
- Reduces the TCO by an order of magnitude and makes the system overall much easier to use.
Integrated with your tools; correlated with your metadata
- Enables jumping between different data sources and different data types.
- Accepts trace spans in multiple formats including Jaeger, OpenTelemetry, and Zipkin.
Maximum traces, minimal overhead
With Grafana Traces, users are able to dive deeper into their observability data and pinpoint specific traces in order to answer questions like:
By storing the traces by ID, you get visibility into your applications without managing the overhead of an Elasticsearch or Cassandra cluster.
It’s also simple to set up and operate — no matter how complex your system is!
Choose the version that works best for youTo use Grafana Traces, you have three options:
An open source, easy-to-use and high-scale distributed tracing backend.
For users who prefer to set up, administer, and maintain their own installation.
Offered as a fully managed service, Grafana Cloud Traces is a highly scalable, and cost-effective distributed tracing backend based on Grafana Tempo.
Managed and administered by Grafana Labs with free and paid options for individuals, teams, and large enterprises.
Includes a robust free tier with access to 50GB of traces.
A self-managed distributed tracing backend based on Grafana Tempo that includes enterprise-grade features and expert support from Grafana Labs.
For organizations that have specific privacy or security requirements and need a self-managed environment.
Debug slow requests faster
Grafana exemplars allow you to link metrics directly to traces so you can discover traces directly from your metrics. This allows you to really short-cut the traditional debugging flow, so you go from:
You can have links to traces based on your metrics query directly embedded in your Grafana graph. Call up p99s, 500 error codes, or specific endpoints using a Prometheus query, and all of your traces now become relevant examples of the pattern you’re looking at.
Pinpoint the source of errors
Loki and other log data sources can be configured to create links from trace IDs in log lines. Using logs, you can search by path, status code, latency, user, IP address, or anything else you can stuff onto the same log line as a traceID.
By indexing traces and logs, individual teams can customize their indexes into their traces. On the same line as traceID, each team can log any field that is meaningful to them, and this instantly creates a searchable field for traces as well.
Identify errors coming from other servicesTo link from a trace back into logs, the Grafana Agent allows you to decorate your traces, logs, and metrics with consistent metadata, which then creates correlations that were not previously possible. After jumping from an exemplar to a trace, you can now go directly to the logs of the struggling service. The trace immediately identifies what element of your request path caused the error, and the logs help you identify why.
Traces + Grafana + your existing logging tool
One of the benefits of using Grafana Traces is that it’s compatible with the tools and services you’re already using. For example, if you’ve invested in Elasticsearch or Splunk for your logging backend, you can easily link from your logging data sources to Grafana Traces and still be able to jump directly from logs to traces faster and more powerfully than ever before.
If you’re already using Elasticsearch for logs, use this demo repo as a simple example to set up your own logs-to-traces flows and begin discovering traces →
Correlate your data
Understanding all relevant data — and the relationships between them — is important for root-causing incidents as quickly as possible and identifying the real source of unexpected system behavior. Grafana allows teams to seamlessly visualize and move among all of their data, all in one place.