sreroot

Runbooks / High error rate

\n

High error rate

\n

Kubernetes · Java · incident notes

\n
\n

Purpose

\n

Investigate elevated HTTP 4xx/5xx responses, application exceptions, failed dependencies, and rollout-related errors.

\n

Symptoms

\n\n

Initial Triage

\n
kubectl get pods -n <namespace> -o wide\nkubectl get deploy <deployment> -n <namespace>\nkubectl rollout history deploy/<deployment> -n <namespace>\nkubectl get events -n <namespace> --sort-by=.lastTimestamp
\n

Inspect logs:

\n
kubectl logs -n <namespace> <pod> --since=30m\nkubectl logs -n <namespace> <pod> --previous
\n

Check status-code distribution by:

\n\n

Classify the Errors

\n

4xx Errors

\n

Investigate:

\n\n

5xx Errors

\n

Investigate:

\n\n

Kubernetes Checks

\n
kubectl describe pod <pod> -n <namespace>\nkubectl describe svc <service> -n <namespace>\nkubectl describe ingress <ingress> -n <namespace>\nkubectl get endpoints <service> -n <namespace>\nkubectl get endpointslices -n <namespace>
\n

Verify:

\n\n

Java Diagnostics

\n

Capture relevant exceptions and a thread dump:

\n
kubectl exec -n <namespace> <pod> -- jcmd <java-pid> Thread.print
\n

Use JFR when errors appear related to:

\n\n

Mitigation

\n\n

Validation

\n

Confirm:

\n\n

Evidence to Capture

\n\n