HTTP 500 Internal Server Error
Generic server-side failure. Something blew up that the server didn't have a more specific response for.
What it means
500 is the server's catch-all error response. The request was fine; the server choked while handling it. Almost always an unhandled exception, a database connection failure, an out-of-memory crash, or a logic error somewhere in the request path.
500s are the most actionable monitoring alert you'll get. A spike in 500s means production is broken right now. Look at your application logs first, then your dependency dashboards (database, cache, queue), then your recent deploys.
Common causes
- Unhandled exception in application code
- Database connection failure or timeout
- Out-of-memory crash on the application server
- Misconfigured environment variable (e.g. missing API key)
- Recent bad deploy
How to fix it
- 1Check application logs for the stack trace
- 2Roll back the most recent deploy if 500s started after a release
- 3Confirm critical dependencies (DB, cache, third-party APIs) are healthy
- 4Check for resource exhaustion (CPU, memory, file descriptors)
How Uptimera reports 500
Uptimera flags 500 as down. A sustained 500 rate is one of the highest-priority incidents your monitoring will report.
Related codes
Bad Gateway
A proxy or gateway in front of your app got a bad response from the upstream. Usually means your app crashed or isn't responding.
Service Unavailable
The server is temporarily unavailable — overloaded, in maintenance, or intentionally not accepting traffic.
Gateway Timeout
A proxy in front of your app waited too long for an upstream response and gave up.
Catch 500s before your customers do
Uptimera monitors your URLs from multiple regions and alerts the moment a 500 starts firing. Free plan included.