Dev Encyclopedia
ArticlesToolsContactAbout

Get notified when new content drops

No spam. Just new articles, tools, and updates straight to your inbox.

Dev Encyclopedia

A reference for builders

Dev.to
Discord
WhatsApp Channel
daily.dev
Hashnode
X

Content

  • Articles
  • Tools
  • About
  • Contact

Connect

  • support@devencyclopedia.com
  • RSS Feed

Legal

  • Privacy Policy
  • Terms of Service
  • Disclaimer

© 2026 Dev Encyclopedia

Back to top ↑
  1. Home
  2. /
  3. Tools
  4. /
  5. PodTriage
Free · Private · No setup

Your pod is crashing. Let's figure out why.

Answer a few questions about what you're seeing and get the exact diagnosis plus the kubectl commands to fix it. No login, no install, works for any cluster.

Zeeshan Tofiq

Zeeshan Tofiq

Full Stack Developer

How PodTriage works

  1. 1

    Pick your pod's status, or paste describe output

    Choose the status shown in kubectl get pods, or paste your kubectl describe pod output and click "Detect status" to skip straight to the right flow.

  2. 2

    Everything runs client-side

    The status detection uses plain regex string matching in your browser. Nothing you paste, including pod names, namespaces, or internal hostnames, is ever sent to a server.

  3. 3

    Answer 2-3 targeted follow-up questions

    Each status has its own small decision tree built from real Kubernetes failure signatures, for example whether kubectl logs --previous shows an error or is empty for CrashLoopBackOff, or whether a memory limit is set for OOMKilled.

  4. 4

    Get a plain-English diagnosis

    No generic "here are five possible causes" list. Your specific answers narrow it down to one diagnosis with a clear explanation of what's actually happening.

  5. 5

    Copy the exact commands to confirm it

    Every diagnosis includes the specific kubectl commands to verify it's really your issue, with a copy button on each one.

  6. 6

    Apply the fix, or start over for a different pod

    Diagnoses that need a config change include a ready-to-adapt YAML snippet. Click "Start over" to run through a different scenario without reloading the page.

What each pod status means

A quick summary of the six statuses PodTriage covers. Pick the matching one in the tool above for the full branching diagnosis.

CrashLoopBackOff

The container starts, then dies, over and over.

OOMKilled

The container was killed for using too much memory.

ImagePullBackOff

Kubernetes can't pull the container image.

Pending

The pod hasn't been scheduled to a node yet.

Evicted

The kubelet removed the pod to relieve pressure on the node.

Stuck ContainerCreating / Terminating

The pod is frozen mid-transition and won't move on.

kubectl commands worth knowing before you start

Every diagnosis in PodTriage builds on these three commands. Getting comfortable with their output makes the follow-up questions much faster to answer.

CommandWhat it tells you
kubectl get pods -n <namespace>Current status: CrashLoopBackOff, Pending, ImagePullBackOff, etc.
kubectl describe pod <pod> -n <namespace>Events, Last State, resource limits, volumes, and more
kubectl logs <pod> -n <namespace> --previousLogs from the last container instance before it crashed
kubectl top pod <pod> -n <namespace>Live CPU and memory usage, useful for OOMKilled sizing

When to use PodTriage

ScenarioWhere to start
A deploy just went out and the pod immediately started crash-loopingCrashLoopBackOff
A long-running service keeps getting restarted with rising memory beforehandOOMKilled
A new pod is stuck without ever reaching RunningPending, ImagePullBackOff, or Stuck depending on the exact symptom
You have a kubectl describe pod output already open and want the fast pathPaste it into the auto-detect box
A node ran out of disk or memory and pods disappearedEvicted
On-call at 4pm, a pod just broke, no senior SRE aroundAny status: pick what kubectl get pods shows and go

Frequently Asked Questions

What does CrashLoopBackOff mean?

CrashLoopBackOff means a container keeps starting, crashing, and getting restarted by Kubernetes, with an increasing delay between each restart attempt. It's not an error type itself, it's Kubernetes reporting that the normal restart policy has kicked in repeatedly. The actual cause (an application error, a bad entrypoint, a failing liveness probe) is almost always visible in kubectl logs --previous or the pod's Events.

What does OOMKilled mean in Kubernetes?

OOMKilled means the container was killed because it tried to use more memory than its resources.limits.memory allowed (or, without a limit set, more than the node itself could spare). You'll see Reason: OOMKilled and typically Exit Code: 137 under the pod's Last State. It can mean the limit is simply too low for real usage, or that the application is leaking memory over time, PodTriage's OOMKilled flow above walks through telling the two apart.

How do I use PodTriage to diagnose a crashing pod?

Pick the status shown in kubectl get pods (CrashLoopBackOff, OOMKilled, ImagePullBackOff, Pending, Evicted, or a stuck ContainerCreating/Terminating pod), or paste your kubectl describe pod output and let the tool auto-detect it. Answer 2-3 follow-up questions about what you're actually seeing in the logs or Events, and you'll get a plain-English diagnosis, the exact commands to confirm it, and the fix.

bash
kubectl get pods -n <namespace>
kubectl describe pod <pod> -n <namespace>
kubectl logs <pod> -n <namespace> --previous
Does PodTriage send my pod data or logs to a server?

No. The entire decision tree and the optional paste-and-detect feature run in JavaScript in your browser. If you paste kubectl describe pod output, it's pattern-matched locally with regular expressions, never uploaded or sent anywhere. This matters because describe output can contain internal hostnames, image registry paths, and other details you may not want leaving your machine.

How is PodTriage different from a CrashLoopBackOff troubleshooting article?
Typical troubleshooting articlePodTriage
FormatOne long article covering every causeA few questions, one relevant answer
Finding your causeRead 5+ sections to find the one that matchesClick through symptoms, skip the rest
Cluster-specificOften tied to one cloud provider's consoleProvider-agnostic: GKE, EKS, AKS, bare metal, k3s
Auto-detectionNonePaste describe output, status is detected for you

Static guides are thorough, and worth reading for background. PodTriage exists for the moment you don't want background, you want the two commands to run right now.

Which pod statuses does PodTriage cover?
  • CrashLoopBackOff — The container starts, then dies, over and over.
  • OOMKilled — The container was killed for using too much memory.
  • ImagePullBackOff — Kubernetes can't pull the container image.
  • Pending — The pod hasn't been scheduled to a node yet.
  • Evicted — The kubelet removed the pod to relieve pressure on the node.
  • Stuck ContainerCreating / Terminating — The pod is frozen mid-transition and won't move on.

These six cover the overwhelming majority of real-world pod crash searches. Node-level issues (NodeNotReady, disk pressure at the node level) may be added in a future version.

Related reading

Guide

50 Kubernetes Interview Questions and Answers

Covers CrashLoopBackOff, OOMKilled, and the broader Kubernetes concepts behind the failure states this tool diagnoses.

Guide

Go 1.26 Goroutine Leak Detection: A Practical Guide

If PodTriage's OOMKilled flow points at a memory leak in a Go service, this is the follow-up: Go 1.26's built-in goroutine leak profiler.

Guide

Docker Compose to Podman Quadlet: A Practical Migration Guide

Running Podman under systemd instead of Kubernetes? The same crash-diagnosis instincts apply, starting with journalctl instead of kubectl logs.

Zeeshan Tofiq

Zeeshan Tofiq

Full Stack Developer

Full stack developer with over 6 years of experience building production applications. Writes practical guides on JavaScript, TypeScript, React, Node.js, and cloud infrastructure. Focused on helping developers solve real problems with clean, maintainable code.

Enjoyed this article?

Get practical dev guides, tool updates, and new articles delivered straight to your inbox. No spam, unsubscribe anytime.

What's your pod's status?