Aller au contenu

Uptime Kuma

Rôle

Monitoring de disponibilité et de santé fonctionnelle de tous les services. Envoie des alertes via ntfy en cas de panne.

Accès

LXC 106 — 192.168.1.51
Port 3001
URL https://uptime.2h15.fr (local/VPN)
Stack Docker — /opt/uptime-kuma/docker-compose.yml
Base de données /opt/uptime-kuma/data/kuma.db (SQLite)

Monitors HTTP / Keyword (fonctionnels)

Chaque monitor vérifie non seulement que le service répond mais que son endpoint de santé retourne le bon contenu :

Service Endpoint Keyword Ce qu'on détecte
NPM / — Disponibilité
Immich /api/server/ping pong API Immich fonctionnelle
Home Assistant /manifest.json — Disponibilité
ntfy /v1/health true Service sain
Pingvin /api/health OK App fonctionnelle
Dashboard /api/services — Disponibilité
Vaultwarden /alive 202 Service sain
Jellyseerr /api/v1/status version App fonctionnelle
Sonarr /api/v3/health?apikey=xxx warning (inversé) Indexeurs en erreur
Radarr /api/v3/health?apikey=xxx warning (inversé) Indexeurs en erreur
Bazarr /api/system/health?apikey=xxx data Providers actifs
Prowlarr /api/v1/health?apikey=xxx warning (inversé) Indexeurs en erreur
Jellyfin /health Healthy Service sain
Immich Swipe / — Disponibilité
Family App /api/health ok App fonctionnelle
Family App OAuth /api/oauth/status val:true,milie:true Tokens Google Cal valides
GigHunter /api/bars — API fonctionnelle
Outil D&D /api/health — API fonctionnelle
code-server / — Disponibilité
WGDashboard / — Disponibilité
Reels Vault API /health ok FastAPI + Claude CLI

Sonarr/Radarr/Prowlarr — invert_keyword

DOWN si warning trouvé dans la réponse (indexeur en erreur), UP si réponse vide []. Auth via ?apikey=xxx.

Bug Kuma 2.5.0

Keyword monitors avec headers JSON échouent avec "Cannot convert object to primitive value". Contournement : query params dans l'URL.

Monitors Push

Monitor Fréquence Émetteur Heartbeat max
Backup Immich Quotidien 3h LXC 104 1450 min
Dump DB Immich Quotidien 2h30 LXC 104 1450 min
Notif MAJ Dashboard Quotidien 7h LXC 106 1500 min
Notif Pingvin Toutes les minutes Host Proxmox —
Check SSL NPM Quotidien 9h Host Proxmox —
WireGuard notify Toutes les minutes Host Proxmox —
Claude Sync Toutes les 6h Host Proxmox 390 min
CrowdSec Notify Quotidien 7h LXC 101 1500 min
Family daily_digest Quotidien 7h LXC 112 1500 min
Family birthday_digest Quotidien 7h05 LXC 112 1500 min
Epic Games notify_games Quotidien 9h05 LXC 106 1500 min
TwitchDropsMiner Toutes les 5 min LXC 106 —

Intégration Dashboard

Le dashboard de supervision lit directement la DB Kuma SQLite pour afficher un point coloré sur chaque carte de service.

  • Cache 60 secondes
  • Mapping KUMA_MONITOR_IDS dans /opt/dashboard/main.py
  • Status : up, down, pending, maintenance, unknown

Alertes

  • Canal : ntfy, topic homelab, priorité high
  • Alerte immédiate si un monitor passe en état DOWN