Watchdog enthält 14 eingebaute Check-Typen. Jeder Check deklariert einen Runner-Modus, der bestimmt, wo er ausgeführt werden kann:
| Modus | Wo er läuft |
|---|---|
| Dashboard | Wird vom Dashboard-Worker-Container ausgeführt. Testet Dinge, die vom Watchdog-Server über das Netzwerk erreichbar sind. |
| Agent | Erfordert direkten Host-Zugriff. Läuft auf einem Agenten mit den richtigen Volumes und pid-Namespace. |
| Dashboard oder Agent | Netzwerk-Level-Check. Kann vom Dashboard oder von jedem Agenten ausgeführt werden. |
| Check | Typ-Kennung | Runner | Beschreibung |
|---|---|---|---|
| HTTP-Erreichbarkeit | http |
Dashboard | Prüft ob eine URL den erwarteten HTTP-Statuscode zurückliefert |
| HTTP-Inhalt | http_content |
Dashboard | Prüft den Response-Body auf erwartete oder verbotene Strings |
| SSL-Zertifikat | ssl_cert |
Dashboard | Überwacht TLS-Zertifikats-Ablauf über mehrere Hosts |
| Docker Container Health | docker |
Dashboard oder Agent | Prüft ob ein Container läuft und healthy ist via Docker-Socket |
| Docker Exec | docker_exec |
Dashboard oder Agent | Führt einen Befehl in einem Container aus, prüft Exit-Code |
| Festplatte | disk_space |
Agent | Überwacht Festplatten-Auslastung mit Warn- und Fail-Schwellwerten |
| Load Average | load_average |
Agent | Überwacht System-Last relativ zur CPU-Anzahl |
| Prozess läuft | process |
Agent | Prüft ob ein benannter Prozess läuft via pgrep -f |
| Log-Datei | log_file |
Agent | Prüft ob eine Log-Datei aktuell ist und ein Muster enthält |
| Datei-Alter | file_age |
Agent | Überwacht wie aktuell eine Datei ist — ideal für Backup-Checks |
| Dateigröße | file_size |
Agent | Prüft ob eine Datei innerhalb eines definierten Größenbereichs liegt |
| TCP-Port | tcp_port |
Dashboard oder Agent | Prüft ob ein TCP-Port offen und erreichbar ist |
| Redis | redis |
Dashboard oder Agent | Sendet PING an einen Redis-Server und prüft die PONG-Antwort |
| Datenbank | database |
Dashboard oder Agent | Öffnet eine PDO-Verbindung zur Datenbank-Erreichbarkeitsprüfung |
Um einen Check sofort auszuführen, Jetzt ausführen in der Check-Liste klicken.
Das Check-System ist vollständig plugin-basiert. Jede PHP-Klasse, die CheckInterface implementiert und mit #[AutoconfigureTag('watchdog.check')] markiert ist, wird automatisch erkannt und in der UI verfügbar.
Vollständige Anleitung: Eigene Checks schreiben.