+How a request actually travels
Request journey.
Six stops between typing a URL and getting a 200. Break any of them and see exactly where the request gives up.
One request, six stops
Browser
You type https://app.lab. Before a single byte of HTTP is sent, the browser needs an IP address, a route to it, and a trusted TLS connection.
What usually goes wrong
- A stale DNS cache keeps using an old address
- A system proxy setting sends traffic somewhere unexpected
- A wrong system clock makes every certificate look invalid
How to check
ip addr
What it looks like in a log
DevTools → Network: (failed) net::ERR_NAME_NOT_RESOLVED
Fault injection
all healthyTiming
HTTP/1.1 200 OK- DNS lookup4 msapp.lab → 10.42.20.10
- Route / connect1 msRoute to 10.42.20.10 available
- Proxy accepts1 msReverse proxy accepted HTTPS on port 443
- TLS handshake14 msTLS OK · CN=app.lab · valid to 2027-03-01
- Application18 ms10.42.20.20:3000 → weekend-api accepted the request
- Database query6 ms10.42.20.30:5432 → query OK
Healthy. 44 ms end to end.
HTTP/1.1 200 OK
Server: lab-proxy
{"status":"ok","service":"weekend-api"}NOC gremlin: Everything’s green. Flip a switch. You know you want to.