restic-backup-suite: Monitoring
Überwachung von restic-backup-suite: Erfolgs-Marker-Datei, Log-Dateien und Exit-Codes. Es gibt keine eingebauten E-Mail- oder Webhook-Benachrichtigungen.
Monitoring
restic-backup-suite verschickt selbst keine Benachrichtigungen (keine E-Mail, kein Webhook). Zur Überwachung gibt es die Marker-Datei, die Log-Dateien und den Exit-Code.
Erfolgs-Marker
Nach einem erfolgreichen Lauf schreibt backup.sh einen ISO-8601-Zeitstempel (Sekunden, mit Zeitzone) in die Datei SUCCESS_MARKER_FILE. Standard: /var/backup/.last_restic_success.
- Das Verzeichnis wird bei Bedarf angelegt. Die Datei bekommt die Rechte 600.
- Der Marker wird nach
restic backup, Retention und Integritätsprüfung geschrieben. - Bei
--dry-runund--dump-onlywird er nicht geschrieben. - Ein leerer Wert (
SUCCESS_MARKER_FILE="") schaltet den Marker nicht ab: Das Script fällt dann auf den Standardpfad/var/backup/.last_restic_successzurück. Über die Konfiguration lässt sich der Marker nicht deaktivieren. - Lässt sich die Datei nicht schreiben, loggt das Script eine Warnung. Der Exit-Code ändert sich dadurch nicht.
Ein externes Werkzeug prüft das Alter der Datei gegen Dein Backup-Intervall. Beispiel für tägliche Backups:
find /var/backup/.last_restic_success -mmin +1440 | grep -q . && echo CRITICAL || echo OK
Ist der Marker veraltet, ist entweder das Backup fehlgeschlagen, oder der Marker konnte nicht geschrieben werden. Das Log klärt es.
Der Marker bestätigt, dass
restic backuperfolgreich war. Er sagt nichts darüber, ob alle Datenbank-Dumps funktioniert haben, siehe Datenbank-Dumps.
Log-Dateien
| Script | Datei |
|---|---|
backup.sh |
<LOG_DIR>/backup-YYYY-MM-DD.log |
restore.sh |
<LOG_DIR>/restore-YYYY-MM-DD.log |
inspect.sh |
<LOG_DIR>/inspect-YYYY-MM-DD.log |
| Cronjob (Ausgabe) | /var/log/restic/cron.log |
- Jede Zeile hat das Format
[YYYY-MM-DD HH:MM:SS] [INFO|WARN|ERROR] Nachricht. Fehler gehen zusätzlich auf stderr. - Bis die Konfiguration geladen ist, schreiben die Scripts nach
/tmp/<script>-YYYY-MM-DD.log. - Pro Tag gibt es eine Datei, mehrere Läufe am selben Tag hängen an. Es gibt keine Rotation, bereinige alte Logs selbst.
tail -100 /var/log/restic/backup-$(date +%Y-%m-%d).log
Exit-Codes
| Code | Bedeutung |
|---|---|
| 0 | Lauf erfolgreich |
| ungleich 0 (in der Regel 1) | Fehler: Konfiguration fehlt, kein root, restic fehlt, SFTP-Test oder Repository-Init fehlgeschlagen, restic backup fehlgeschlagen, unbekannte Option |
Warnungen ändern den Exit-Code nicht: fehlgeschlagene Retention, Integritätsprüfung mit Befund, nicht startender Service, nicht schreibbarer Marker und fehlgeschlagene Datenbank-Dumps im normalen Backup-Lauf.