THE SHORT ANSWER
Alert fatigue is an existential threat to reliability: when an on-call rotation receives dozens of nocturnal pages for non-critical warnings (e.g. 'CPU at 82%', 'Cron job warning', 'Single disk at 75%'), engineers become desensitized and inevitably sleep through true P0 outages. Google SRE and Rob Ewaschuk's alerting doctrine defines the golden rule: Every alert that pages a human MUST represent an urgent, actionable problem affecting real users or burning error budgets, and MUST link directly to a verified runbook. If an alert requires no human action within 15 minutes, it must NOT page—it should be routed to a daily Slack digest or Jira queue. Enforcing an 'alert deletion policy' for noisy alarms restores on-call sanity and slashes incident response latency.
Engineering Handbook & Failure Dynamics
1. Underlying Mechanism
Alerting architecture must classify telemetry into three distinct destinations: (1) Paging (Synchronous Wakeup): Error budget burn rate exceeding 14.4x (burning 2% of monthly budget in 1 hour), checkout API success rate <99%, or customer-facing latency p95 > 2s. (2) Ticket / Next-Day Slack (Asynchronous): Disk capacity projected to fill in 3 weeks, non-critical replica restart, or background batch delay. (3) Dashboard / Metrics (Silent): CPU utilization, memory percentage, and individual node metrics. An alert without a link to a maintained `runbook_url` in its PagerDuty payload is automatically rejected by CI/CD linters.
2. Appropriate Use Context
All engineering teams running 24/7 on-call rotations across microservices, databases, Kubernetes platforms, and cloud infrastructure.
3. Production Failure Modes
An engineer receiving 45 pages in one night for intermittent disk spikes, silencing PagerDuty for 4 hours, during which the primary payment database crashed unnoticed; an on-call engineer waking up at 3 AM to an alert named `Alert-HighCPU-Service-B` with no description, no runbook, and no indication of what action to take.
4. Diagnostic Signals & Telemetry
PagerDuty reporting >10 pages per engineer per shift; on-call surveys showing high anxiety and sleep disruption; more than 50% of alerts acknowledged with zero corresponding code, infrastructure, or operational actions.
5. Prevention & Safeguards
Institute a weekly 'On-Call Handoff Review' to audit every page; if an alert was triggered but required no action, delete it or convert it to a ticket; track 'Pager Load Budget' (<2 pages per 24-hour shift target); alert on symptoms (user-facing SLOs) rather than causes (raw CPU).
6. Architectural Trade-offs
Strictly filtering paging alerts reduces false positives and burnout, but requires engineering teams to invest time defining precise SLO error-budget burn calculations.
Case Study (TinyCTO In-Field Example)
An e-commerce platform's on-call engineers received 120 pages/week across 80 microservices. The team implemented symptom-based alerting: deleting all 400 CPU/memory threshold alerts and replacing them with 6 multi-window error-budget burn rate alerts on user-facing API routes with mandatory runbook links. Weekly pages dropped from 120 to 4, on-call engineer retention stabilized, and MTTR dropped by 55% because engineers immediately trusted and acted on every page.
Interactive Concept Drills
2 CardsWhat is the 'Golden Rule' of on-call paging alerts?
Why should teams alert on symptoms (SLOs) rather than causes (CPU/Memory)?
On-Call Alert Fatigue & Actionable Paging Threshold Hygiene — Technical FAQ
What is a healthy target for Pager Load per on-call shift?
Google SRE guidelines recommend a maximum of 2 actionable incidents per 24-hour shift to ensure engineers have time to recover and complete postmortems.
What should happen to an alert that fired 10 times in a week with zero human action required?
It must be deleted immediately or converted to an asynchronous daily report. It has zero business waking engineers.
🤖 AEO & Key Facts Summary
Key Architectural Facts
- ▸Every page must be urgent, actionable, linked to a runbook, and impact user SLOs.
- ▸Alert on symptoms (user errors/latency) rather than causes (raw CPU/memory).
- ▸Target pager load is <2 pages per 24-hour shift.
- ▸Noisy, non-actionable alarms must be aggressively deleted during weekly handoffs.
Common Misconceptions
- ✗Misconception: More alerts mean a safer system (False: Too many alerts guarantee alert fatigue and missed outages).
- ✗Misconception: 90% CPU utilization always requires waking up an engineer (False: If user requests succeed within SLA, high CPU is healthy efficiency).
Decision & Governance Guidance
Audit all PagerDuty alerts to enforce mandatory runbook links. Delete any alert that has triggered without requiring manual action.
Authoritative Sources & Standards
- [OFFICIAL_DOCUMENTATION]My Philosophy on Alerting: SRE Principles and Alert Fatigue— Rob Ewaschuk / Google SRE
