Runbook category

Observability

Open this category when you cannot yet name the object that is on fire. Before you change work_mem, add an index, or touch vacuum settings, you need a statement id, a wait event, a buffer count, or a progress row you can quote. These runbooks are the instrumentation layer, the difference between guessing and measuring.

The failure modes are blindness and misread signals. pg_stat_statements ranking real cost, or lying because it was never loaded the way you think. EXPLAIN (ANALYZE, BUFFERS) separating disk from CPU. Wait events explaining a stalled session. The pg_stat_progress_* views that turn "is this VACUUM stuck or just slow?" into a block counter. Temp spills, cache hit ratio, checkpoint write pressure, rollback rate, pg_stat_io, and the Sev-1 habit of capturing evidence before recovery erases it.

Query performance is what you do once you have a plan. Vacuum & bloat and Locking & concurrency are what you do once the metric points at dead tuples or a blocker. WAL & replication is the disk and lag half of the same instrumentation story. Start here when the question is still "where do I look?"