deployship
Docs
Health Checks & Self-Healing Watchdogs

Health Checks & Self-Healing Watchdogs

DeployShip continuously monitors both server infrastructure and individual deployed applications:

1. Server-Level Health Checks

Every 5 minutes, DeployShip pings each server over SSH to verify host availability, SSH connectivity, and latency. If a server becomes unreachable, you receive an immediate alert.

2. Application-Level Health Checks & Self-Healing

Every 5 minutes, DeployShip probes each active application directly on its assigned internal port (http://127.0.0.1:<PORT>/ and socket listeners).

  • Autonomous Self-Healing: If an application crashes, drops its port, or returns upstream gateway errors (502/503/504), DeployShip automatically executes a self-healing restart command over SSH tailored to your deploy strategy (pm2 restart, docker restart, or docker compose restart).
  • Post-Heal Verification: 3 seconds after the restart attempt, DeployShip verifies that the port and HTTP listener have successfully recovered.
  • Instant Alerts & Crash Logs:
    • If self-healing succeeds, you receive a notification confirming the service was automatically restored with zero downtime for your users.
    • If the application remains down (e.g. fatal code exception or missing environment variable), DeployShip automatically captures the last 15 lines of process/container logs and delivers a downtime alert with diagnostic details so you can resolve the issue immediately.
  • Crash Loop Protection: DeployShip limits automated restart attempts to 3 consecutive failures to safeguard your server's CPU and memory resources from infinite restart loops.

3. Proactive Server Resource Warnings (RAM & Disk)

During every 5-minute health ping, DeployShip inspects the server's resource utilization:

  • RAM Threshold (>85%): Alerts you before Linux OOM Killer abruptly terminates your largest memory consumers.
  • Disk Threshold (>85%): Alerts you before root disk exhaustion blocks Docker container writes, database writes, or git checkouts.
  • Debounced Delivery: Alerts are throttled to once every 4 hours per server and automatically reset when usage normalizes below 80%.

Was this page helpful?