This website uses cookies

Read our Privacy policy and Terms of use for more information.

Monitoring and observability get used as if they are the same thing, and plenty of vendors are happy to let that ride. They are not the same. One is something you do. The other is something your system either has or does not. Get the distinction straight and you stop paying for dashboards when what you needed was the ability to ask a question nobody planned for.

What monitoring is

Monitoring is watching known signals for known problems. You decide in advance what matters (CPU, error rate, queue depth, latency), you set thresholds, and you get told when one crosses the line. It answers a single, valuable question: is the thing I expected to break, breaking? Dashboards and alerts are its native form. It is mature, cheap to run, and it is exactly what you want for the failures you can already name.

What observability is

Observability is older than the marketing. It comes from control theory: a system is observable if you can work out its internal state from its external outputs. In practice that means your system emits telemetry rich enough that you can ask new questions of it, including ones you never anticipated, without shipping new code to answer them. It is the difference between "error rate is up" and being able to follow one failing request across nine services and see exactly where and why it broke. Its native form is high-cardinality, high-dimensionality data: traces, structured events, the ability to slice by any attribute.

Here is the cleanest way to hold it. Monitoring tells you when something you predicted goes wrong. Observability lets you understand something you did not predict. Known-unknowns versus unknown-unknowns.

They are not rivals

You do not choose one. You monitor a system that is observable. Monitoring is the practice; observability is the property that makes the hard questions answerable when monitoring has only told you that something, somewhere, is wrong. A good setup has both: tight alerting on the failures you can name, and telemetry rich enough to investigate the ones you cannot. The instrumentation that gets you there is increasingly standard, which is what OpenTelemetry is for, and the pipeline that carries and shapes that data is a real piece of engineering in its own right.

The honest ledger

Three honest caveats. First, "observability" is oversold as a product. You can buy an expensive platform and still not be observable, because observability is a property of your telemetry and your instrumentation, not a logo on an invoice. Second, three dashboards are not observability. If your metrics, logs and traces sit in three tools that do not talk to each other, you have three monitoring systems, not the ability to ask one question across them. Third, more data is not free. The high-cardinality telemetry that makes a system observable is exactly the telemetry that runs your bill up, so it needs discipline, not just switching everything on.

So, which do you need?

If you run something small and predictable, solid monitoring may be most of what you need. The more distributed, dynamic and microservice-shaped your system gets, the more its failures become ones nobody predicted, and that is precisely where monitoring runs out and observability earns its cost. Most real estates need both, deliberately: monitoring for the known, observability for the rest. The honest question is not which word wins, but whether your telemetry can answer the question you have not thought of yet.

 

Get the next one

One signal a week. No noise.

If this was useful, Metrics & Mayhem sends one short, practical piece like it to IT operations leaders most weeks. No fluff, no vendor noise.

Join free →

Prefer to start with the book? Read a free chapter.

Sources / further reading

  • The term "observability" comes from control theory (R. E. Kalman, 1960): a system is observable if its internal state can be determined from its outputs.

  • OpenTelemetry, the vendor-neutral standard for traces, metrics and logs: opentelemetry.io