Alerts & Monitoring
fleet-bot includes four monitoring systems that run continuously and send alerts through your configured adapter.
Alert Monitor
Polls fleet health every 2 minutes and alerts on state transitions.
- Tracks per-app health state (
healthy,degraded,down) - Only alerts when state changes (no repeated alerts for the same issue)
- Auto-restart: optionally restarts apps that go down (with 10-minute cooldown between restarts)
- Mute non-critical: when enabled, only alerts on
downtransitions (ignoresdegraded)
Commands
/alerts — show current settings + toggle buttons/alerts on|off — enable/disable monitoring/alerts autorestart — toggle auto-restart/alerts mute — toggle mute non-criticalPing Monitor
HTTP-pings all app domains every 3 minutes.
- Checks each app’s configured domains with a 10-second timeout
- Alerts on failures (connection error, timeout, 5xx status)
- Alerts on slow responses (> 3 seconds)
- Tracks per-domain status and latency
Commands
/ping — show all ping results/ping on|off — enable/disableUptime Tracker
Polls app health every 2 minutes and persists uptime data to /etc/fleet/uptime.json.
- Records upticks/downticks per app
- Calculates uptime percentage over time
- Data survives bot restarts (persisted to disk)
Commands
/uptime — show uptime percentages for all appsDaily Digest
Sends a summary message at 08:00 UTC daily.
- App health overview (healthy/degraded/down counts)
- Uptime percentages for the past 24 hours
- Ping latency summary
- Alert count since last digest
Commands
/digest — show digest settings/digest on|off — enable/disable daily digestScheduled deployments
/deploy_at 14:30 myappSchedules a deployment at the specified time. The digest manager handles the scheduling.
Alert destination
Alerts are sent to the first entry in alertChatIds (Telegram) or allowedNumbers (BlueBubbles). Configure this in /etc/fleet/bot.json.