RousselTMLEARNING

Observabilité · Courses

Grafana Tempo: from discovery to expertise

Complete Grafana Tempo course: distributed tracing, installation, OpenTelemetry instrumentation, TraceQL, derived metrics, correlation and operations.

7 chapters18 lessonsEN
At your pace, through practice.

By the end of this course you will be able to

  • Deploy Tempo and send OTLP traces
  • Search and analyse traces with TraceQL
  • Derive RED metrics and a service graph from traces
  • Sample and correlate traces, logs and metrics

🎯 Level : Advanced👥 Who it is for : Developers and SREs who want to understand latency in distributed systems

LEARNING PATH

Course curriculum

0Course Overview1 lesson
1Introduction and installation4 lessons
2Instrumentation and ingestion4 lessons
3TraceQL2 lessons
4Metrics and correlation3 lessons
5Storage and operations3 lessons
6Best practices1 lesson

Recommended practices for running the product in production.

  1. Tempo best practicesArticle · ⏱ 6 min

LEARN BY DOING

Use cases & applications

Latency diagnosis

Identify the service or SQL query slowing down a transaction.

Dependency mapping

Generate a service graph from traces.

RED alerts without double instrumentation

Derive throughput, errors and latency from spans.

End-to-end correlation

Link a trace to its logs, metrics and profiles.

Recommended prerequisites

What next?

Frequently asked questions

What is Grafana Tempo?

A distributed tracing backend from Grafana Labs that only requires object storage and integrates natively with Grafana, Loki and Prometheus.

What is the difference between Tempo and Jaeger?

Tempo stores traces in plain object storage without a heavy index and is queried with TraceQL; Jaeger relies on Elasticsearch or Cassandra.

What is TraceQL?

Tempo's query language for searching spans by attributes, duration, status and parent/child relationships.

How do you send traces to Tempo?

Via OTLP (gRPC 4317, HTTP 4318), directly from the OpenTelemetry SDKs or through Grafana Alloy.