Health and diagnostics
Layered health and Diagnose — listening, process, loopback, HTTP, firewall, Docker, and proxies.
What this is
Health and Diagnose walk deterministic layers: listening, process, local connectivity, application HTTP(S) checks on loopback, service, firewall, binding, container, reverse proxy, and stalled. If a layer cannot be proved, PortPilot reports Unknown instead of inventing reachability.
There is no outbound “can the internet reach this port?” probe. External reachability is always unknown.
Prerequisites
Agent running. Diagnose is available on Free when the machine is online.
How to run it
- Desktop: Health or Diagnose
- Website: machine Health, or port detail → Diagnose
- CLI:
portpilot health [port]andportpilot diagnose <port> - Cmd+K: Diagnose port
Optional HTTP/HTTPS checks are loopback GETs you configure on the port — not a claim that the public internet can reach you. Last checked and failure text appear on the layer that failed.
Expected result
A layer list with pass / fail / unknown and a diagnosis code (for example listening-only, firewall blocked, container stopped).
Common problems
| Symptom | Recovery |
|---|---|
| Everything Unknown | Agent just started — wait and Diagnose again |
| HTTP check fails | App not serving on loopback; TLS mismatch |
| “Unhealthy” in the fleet | Open the port and Diagnose; do not assume DNS or WAN |