Heartbeats

Heartbeats überwachen, dass Cronjobs, Backups und Importe wirklich laufen: eine Ping-Adresse je Job, Periode und Karenz, Fehlermeldung über …/fail.

Auf dieser Seite

Heartbeats für Cronjobs und Backups

Ein Heartbeat überwacht, dass ein Job überhaupt läuft: nächtliches Backup, Shop-Import, Newsletter-Versand, Zertifikatserneuerung. Du legst ihn in den Einstellungen der Domain an (Name, erwartete Periode, Karenz) und baust den Aufruf seiner Ping-Adresse ans Ende des Jobs. Bleibt der Aufruf länger als Periode plus Karenz aus, eröffnet DomainWarn den Incident heartbeat_missed; der nächste Ping behebt ihn sofort. Ein Aufruf von …/fail meldet einen Fehlschlag (heartbeat_failed).

Die Adresse braucht keine Anmeldung, das Token in der Adresse ist der Nachweis; GET und POST sind gleichwertig. Für Cron eignet sich curl -fsS --retry 3, damit kurze Netzprobleme den Ping nicht verschlucken.

backup-nightly.sh
#!/bin/sh
# Backup, danach Heartbeat melden – bei Fehler …/fail
if /usr/local/bin/backup.sh; then
  curl -fsS --retry 3 https://api.domainwarn.com/api/v1/heartbeats/<TOKEN>
else
  curl -fsS https://api.domainwarn.com/api/v1/heartbeats/<TOKEN>/fail
fi