304 β€” Signal Correlation: Metrics, Logs & Traces

Advanced

Master the art of cross-signal correlation in Grafana β€” link metrics to traces via exemplars, navigate from logs to traces via trace_id, and debug incidents using all three observability pillars together.

Learning Objectives

1
Configure cross-signal correlation in Grafana
2
Link metrics to traces via exemplars
3
Navigate from logs to traces using trace_id
4
Debug incidents using all three observability pillars
Step 1

The power of cross-signal correlation

Understand why correlated signals are exponentially more powerful than isolated metrics, logs, and traces. Correlation turns three separate tools into one unified debugging experience.

Commands to Run

cat <<'EOF'
=== WHY CORRELATION MATTERS ===

Without correlation (three isolated tools):
  Metrics: "Error rate is 5% on order-api"
  Logs:    "Found 847 error logs in the last hour"
  Traces:  "There are slow traces for order-api"
  Problem: You manually cross-reference timestamps and service names

With correlation (unified investigation):
  1. Metrics dashboard shows error rate spike at 14:32
  2. Click a data point β†’ see example traces (exemplars)
  3. Open a trace β†’ see it hit payment-api with 5s latency
  4. Click the payment-api span β†’ see related logs
  5. Logs show: "Stripe rate limit exceeded, retrying"
  6. Root cause found in 2 minutes, not 2 hours

=== THE THREE CORRELATION LINKS ===

  METRICS ──exemplars──→ TRACES
    ↑                       |
    |                       | trace_id
    |                       ↓
  time range            LOGS
    |                       |
    └──── time range β”€β”€β”€β”€β”€β”€β”€β”˜
EOF

What This Does

Individual signals answer different questions: metrics tell you something is wrong (what), logs tell you what happened (why), and traces tell you where the problem is (where). Correlation connects these answers into a single investigation flow. The three key links are: exemplars (metrics β†’ traces), trace_id (logs ↔ traces), and time ranges (metrics ↔ logs). When all three are configured, you can start from any signal and navigate to the others without context-switching.

Expected Outcome

You see the contrast between isolated and correlated signals, followed by a diagram showing the three correlation links between metrics, logs, and traces.

Pro Tips

  • 1
    The investigation always starts with metrics (they have the broadest view) and drills into traces and logs for detail
  • 2
    Correlation is configured in Grafana data sources, not in the backends themselves
Was this step helpful?

All Steps (0 / 10 completed)