Opening Scenario
Your monitoring alert fires: error rate spiked from 0.1% to 12% in the last five minutes. You open the logs. You see hundreds of HTTP status codes — 502, 503, 429, 499 — scattered across multiple services. No stack traces, no exception messages. Just numbers.
You have five minutes to decide whether to roll back, scale up, or wait it out. You need to read these numbers correctly.
Question Progression
1. Who is responsible for this error — your code or something else?
Question: When you see a 5xx error in your logs, how do you determine whether the problem is in your application or in something upstream from it?
Reasoning: HTTP status codes encode who is reporting the failure. The digit in the hundreds place tells you the category. But the specific code — and crucially, which service emitted it — tells you whether to look in your code, your dependencies,…
In the full tutorial
- When to Reach for This