Der check last_run liest eine zuvor konfigurierte Liste von Dateien aus, welche einen UNIX Timestamp enthalten.
Die Idee hinter dem Check ist, Programme überwachen zu können, welche nur sporadisch oder regelmäßig innerhalb eines bestimmten Zeitrahmen laufen müssen. Diese Programme müssen dazu jeweils nur eine Art Heartbeat in eine Datei schreiben. Dieser Heartbeat ist ein Unix Timestamp mit der aktuellen Zeit.
In der Agent Konfigurationsfile, die i.d.R nach /etc/check_mk abgelegt werden muss, müssen nur die Pfade zu diesen Dateien sowie ein eindeutiger Servicename angegeben werden. Siehe hierzu das Beispiel in der Datei selbst.
Die Inventur erkennt sämtliche in der Config angegebenen Service-Namen als neuen Service. Automatisch werden nun informativ die vergange Zeit zwischen jetzt und dem Timestamp angezeigt. Verglichen wird automatisch mit der Serverzeit des entfernten Clients, damit Zeitunterschiede zwischen Nagios Server und Client keinen Einfluss nehmen.
Schwellwerte können über check_parmeters gesetzt werden. Zum Einsatz kommt ein Tuple mit 3 Werten. Wert 1 ist h oder m, für Stunden oder Minuten. Die beiden folgenden Werte sind warn und crit.
Performancedaten werden keine geliefert.
Allgemeine Tipps:
PHP und Perl haben eine time() funktion, welche den Timestamp erzeugt. Auf der Shell kann es mit data +%s erzeugt werden. In Cronjobs muss man % mit \ escapen. Aber eine wirkliche Kontrolle erhält man damit natürlich nicht. Dass der Cronjob lief, sagt nichts drüber aus, ob das Programm seinen Job gemacht hat.
Download auf check_mk exchange