Health monitoring across three layers: is the container running, is the app internally functional, and is it reachable externally.Documentation Index
Fetch the complete documentation index at: https://docs.augustin.ai/llms.txt
Use this file to discover all available pages before exploring further.
Tools
- Homepage — dashboard with container status, internal site monitors, and per-service API widgets. Talks to the swarm API via
docker-socket-proxy_dockerproxyon theswarmoverlay, so it sees services scheduled on both nodes. - Uptime Kuma — external HTTP checks against public URLs, with Telegram alerting.
- Dozzle — log aggregation across both nodes (
mode: globalswarm service).
Coverage Matrix
| Service | Container Status | Internal Functionality | External Reachability |
|---|---|---|---|
| aiclient2api | Homepage | Docker healthcheck (healthcheck.js) | Kuma |
| audiobookshelf | Homepage | Docker healthcheck + widget | Kuma |
| bazarr | Homepage | Docker healthcheck + widget | Kuma |
| bulwark | Homepage | /api/health via healthcheck | Kuma |
| calibre-web | Homepage | Docker healthcheck + widget | Kuma |
| chaptarr | Homepage | Docker healthcheck | Kuma (/ping) |
| cloudflared | Homepage | Cloudflare API widget (external) | — (implicit; if down, every public URL fails) |
| docker-socket-proxy | Homepage | — | — (internal only) |
| dozzle | Homepage | — | Kuma |
| draw | Homepage | Port check only | Kuma |
| element | Homepage | Docker healthcheck | Kuma |
| flaresolverr | Homepage | Docker healthcheck (sessions.list probe) | Kuma |
| gluetun | — | Docker healthcheck + Homepage API widget (real VPN status) | Kuma (control server only) |
| homepage | Homepage | Docker healthcheck | Kuma |
| jellyfin | Homepage | Widget (no healthcheck) | Kuma |
| matrix-db (postgres) | Homepage | Docker healthcheck | — |
| mautrix-discord | Homepage | — | — |
| miniflux | Homepage | Docker healthcheck + widget | Kuma |
| miniflux-db (postgres) | Homepage | Docker healthcheck | — |
| n8n | Homepage | — | Kuma |
| nextflux | Homepage | Port check only | Kuma |
| openclaw | Homepage | Docker healthcheck (/healthz) | Kuma |
| openwebui | Homepage | Docker healthcheck | Kuma |
| pocket-id | Homepage | Docker healthcheck | Kuma |
| prowlarr | Homepage | Docker healthcheck + widget | Kuma |
| qbittorrent | Homepage | Docker healthcheck (via gluetun) | — (behind VPN, only through seerr) |
| radarr | Homepage | Docker healthcheck + widget | Kuma |
| reader/feed-scraper | Homepage | — | — |
| reader/rsshub | Homepage | — | Kuma |
| registry | Homepage | — | — (internal only) |
| searxng | Homepage | — | Kuma |
| seerr | Homepage | Docker healthcheck + widget | Kuma |
| sonarr | Homepage | Docker healthcheck + widget | Kuma |
| stalwart | Homepage | Homepage JMAP widget (real query) | Kuma |
| synapse | Homepage | Docker healthcheck | Kuma (accepts 401/403) |
| traefik | Homepage | Homepage API widget | Kuma (accepts 401) |
| uptime-kuma | Homepage | Docker healthcheck | Kuma |
| yamtrack | Homepage | Docker healthcheck | Kuma |
| yamtrack/redis | Homepage | — | — |
Drive Monitoring
scripts/drive-check.sh runs on i3 every 15 min via cron. For each drive + the mergerfs pool, it checks mountpoint status, read, and write — then pushes explicit status=up or status=down to its Uptime Kuma push monitor. Missing pushes still trip the monitor after its heartbeat interval, but a failure is surfaced immediately.
Monitored drives: sandisk-2tb, sandisk-1tb-lg, sandisk-1tb-dg (pool members), mergerfs-pool (/mnt/main/media).
Backup & Maintenance Push Monitors
Every cron script that matters pushes to Uptime Kuma —up on success, down with a message on any failure. Tokens live in scripts/.kuma-env (gitignored, symlinked/synced to Pentium).
| Script | Node | Frequency | Push token |
|---|---|---|---|
scripts/backup-i3.sh | i3 | daily 03:00 | PUSH_BACKUP_I3 |
scripts/backup-pentium.sh | Pentium | daily 04:00 | PUSH_BACKUP_PENTIUM |
scripts/restic-check.sh | i3 | weekly Sun 05:00 | PUSH_RESTIC_I3, PUSH_RESTIC_PENTIUM |
scripts/rebuild-images.sh | i3 | weekly Sun 04:00 | PUSH_REBUILD_IMAGES |
aiclient2api/sync-kiro-token.py | i3 | every 15 min | PUSH_KIRO_SYNC |
scripts/drive-check.sh | i3 | every 15 min | per-drive tokens |
.kuma-env.
Gaps
- Healthchecks still missing on: cloudflared, docker-socket-proxy, dozzle, draw, jellyfin, n8n, qbittorrent, registry, traefik, mautrix-discord, feed-scraper, nextflux, rsshub, searxng, stalwart, yamtrack/redis. Most of these ship no healthcheck upstream; a few could use a cheap
curl-based one added in our compose file. - Cloudflared has no external monitor. Its status is implicit — if the tunnel is down, every public-URL Kuma check fails at once.
- Gluetun’s Kuma monitor only confirms the control server responds. Homepage’s widget (with API key) gets the real VPN-tunnel state.