What Observability Actually Means — The Three Pillars

Observability

Chapter 1 · What Observability Actually Means — The Three Pillars

cloud1-8 introduced the vocabulary — metrics, logs, traces, automatic vs. configured monitoring, alert fatigue. cloud2-4 built real incident-response discipline on top of that vocabulary — the first-five-minutes triage habit, cross-service correlation IDs, "find the earliest alert, not the loudest." Both stayed conceptual and tool-agnostic, on purpose. This course goes deep specifically on the real tooling underneath — Prometheus, Grafana, Loki, OpenTelemetry, Jaeger — the systems that actually produce the metrics, logs, and traces those two chapters assumed were already there.

Monitoring vs. Observability — A Real Distinction

Monitoring watches for failure modes you already anticipated — a dashboard for CPU usage, an alert for disk space below 10%, a check for "is the process running." It answers questions decided in advance. Observability is different: the ability to ask a new question about a system's internal state, using only its external outputs, without shipping new code to answer it. cloud2-4's own "first five minutes" already implied this — during a genuinely novel incident, you usually don't know what to look for yet. Monitoring gives you the dashboards someone thought to build in advance; observability gives you the raw material to explore a question nobody anticipated.

The Three Pillars

Three distinct categories of telemetry, each answering a different kind of question:

  • Metrics — numeric measurements over time (request rate, CPU%, P99 latency). Cheap to store, efficient to aggregate, ideal for trends and alerting — but they summarize; a metric can't tell you what happened to one specific failed request.
  • Logs — discrete, timestamped event records, as rich and arbitrary as the code that emits them. Detailed, but expensive to store and query at real scale, and hard to correlate across services without deliberate effort — exactly the correlation-ID discipline cloud2-4 already named.
  • Traces — the path one specific request takes across every service it touches, with timing for each hop. The pillar built specifically to answer "where, in this whole chain, did the time actually go?"

A Concrete Walkthrough — One Request, Three Views

A checkout request is slow. Each pillar answers a different piece of the same incident:

  • Metrics say: P99 checkout latency has climbed from 200ms to 4s over the last ten minutes — a trend, aggregated across every request, telling you something is wrong and roughly when it started.
  • Logs say: the payment service logged three timeout errors and a retry in the last minute — detail, but only for the services that happened to log something, and only if you already know which service to look at.
  • Traces say: for this specific slow request, 3.8 of the 4 seconds were spent waiting on a single downstream call to the inventory service — the one view that actually pinpoints where in the chain the time went, rather than just confirming that some slowdown exists.

No single pillar answers the whole question alone. Metrics tell you something is wrong; logs tell you what a given service saw; traces tell you where, across the whole request's path, the problem actually lives.

PillarBest answersCost / granularity
MetricsIs something wrong, and roughly when did it start?Cheap, highly aggregated — no single-request detail
LogsWhat did this one service observe?Rich detail, expensive at scale, hard to correlate alone
TracesWhere, across every service in the request's path, did the time go?Detailed per-request, but only for instrumented paths
The real goal is correlation, not just collection
Having all three pillars isn't the point by itself — the real payoff is being able to move between them: a metric spike sends you to the right time window, a log line's trace ID sends you straight to the matching trace. Chapter 9's own OpenTelemetry material is specifically about wiring that correlation together, rather than treating metrics, logs, and traces as three unconnected tools.
"We have dashboards" isn't the same claim as "we have observability"
A dashboard only answers the questions someone thought to build a panel for in advance — that's monitoring, and it's genuinely useful, but it's not the same capability. Real observability means the underlying data actually supports arbitrary, unanticipated exploration — a genuinely new question, asked for the first time during an incident, needs an answer to exist in the data already, not just in whichever charts happened to get built ahead of time.

Hands-On Exercises

Exercise 1

Explain, in your own words, the real difference between monitoring and observability, using cloud2-4's own "first five minutes" incident-triage habit as part of your explanation.

📄 View solution
Exercise 2

For a checkout request that returns a 500 error only once every few hundred attempts, explain which of the three pillars would most directly help you find the exact failing request, and why the other two pillars alone wouldn't be enough.

📄 View solution
Exercise 3

A team says "we have observability" because they have twelve Grafana dashboards covering their known failure modes. Explain, using this chapter's own distinction, why that claim is only partly true.

📄 View solution

Chapter 1 Quick Reference

  • Monitoring — watches for anticipated failure modes; observability — supports answering unanticipated questions from the same underlying data
  • Metrics — cheap, aggregated numeric trends; tells you something is wrong, not which specific request
  • Logs — rich, detailed, per-event; expensive at scale, hard to correlate without deliberate effort
  • Traces — the path and timing of one request across every service it touches
  • The real payoff is correlation between pillars, not just collecting all three independently
  • This course builds the real tools (Prometheus, Grafana, Loki, OpenTelemetry, Jaeger) that cloud1-8/cloud2-4 assumed were already in place