Marcel Moré stellte den Service healthchecks.io vor, mit dem sich automatisierte Batch-Scripte einfach überwachen lassen.

Dieser bietet eine Lösung dafür, zu erkennen ob ein Batch-Script oder Cronjob nicht im vorgesehenen Zeitraum gelaufen ist. Meist bemerkt man ausgebliebene Batch-Läufe erst zu spät oder wenn in der Folge ein Problem aufgetreten ist.

Der Dienst healthchecks.io bietet die Möglichkeit mit jedem Aufruf eine einfache Signalisierung zu senden und dazu eine Vorgabe zu definieren, wann die nächste Laufzeit erwartet wird. Bleibt das nächste Signal aus, fängt eine Frist an zu laufen, die nach Ablauf einen frei definierbaren Alarm auslöst.

Beispiel: Ein Kopier-Script auf dem FileMaker Servers soll täglich das Backup-Verzeichnis auf eine entfernte Freigabe kopieren. Dazu ruft das Batch-Script nach dem erfolgreichen Kopiervorgang per CURL-Befehl eine URL auf. Diese enthält eine eindeutige ID für das eingerichtete Überwachungs-Set. Der Überwachungszeitraum ist für tägliche Ausführung eingestellt mit einer Alarm-Frist von 24 Stunden. Bleibt die nächste erwartete Signalisierung länger als 24 Stunden aus, dann sendet der healthchecks.io Dienst eine eMail und zusätzlich eine Message auf einen hinterlegten Whatsapp-Account. Damit lässt sich unmittelbar erkennen, dass möglicherweise ein Problem vorliegt.

Die Signalisierung lässt sich wahlweise per URL-Aufruf oder per eMail mitteilen. In der Dokumentation sind zahlreiche vorgefertigte Beispiele enthalten, wie sich der URL-Aufruf mit der ID unter verschiedenen Programmiersprachen und Betriebssystemen einrichten lässt. Meist ist nur eine Zeile Code zu kopieren.

Weiterhin bietet healthchecks.io auch eine Integration für zahlreiche APIs an. Damit lässt sich die Alarmierung z.B. auch an Slack oder Trello senden oder über einen der zahlreichen Messenger-Dienst wie Whatsapp, Signal, Telegram, Matrix, Discord usw.

Während der Präsentation baute Marcel auf die Schnelle eine kleine Demo, die Alarm schlägt, wenn ein Button in einer FileMaker Datei mehr als 1 Minute lang nicht angeklickt wurde. Die Signalisierung an healthchecks.io erfolgte einfach mit dem Befehl “aus URL einfügen” in einer lokalen Variable. In der URL stand dabei die ID des Überwachungs-Sets auf dem Online-Dienst. Erwartungsgemäß traf nach 2 Minuten die Alarm-Mail ein und nach Klicken des Buttons direkt danach eine weitere Mail mit der Benachrichtigung, dass der Alarm aufgehoben wurde.

Vorteil ist die schnelle und einfach Integration und die vielseitige Einsetzbarkeit unabhängig von der verwendeten Basistechnologie oder Anwendung.

Für einfache Projekte ist der Dienst kostenlos verwendbar. Wer es aufwändiger möchte oder selbst die Kontrolle über die Installation behalten will, kann sich das OpenSource Projekt auf github laden und auf einem eigenen Server betreiben.

Healthchecks Website
https://healthchecks.io/
https://healthchecks.io/about/

Healthchecks github Projekt
https://github.com/healthchecks/healthchecks