Nagioscheck-Reschedule per Kommandozeile

Aus Knowledgebase
Version vom 29. Oktober 2009, 17:51 Uhr von PoC (Diskussion | Beiträge) (Neu)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Normalerweise wird man einen Servicecheck in Nagios per cgi/Weboberfläche anweisen, nochmals außerhalb der gesetzten Checkzeiten zu löschen. Ist aber eine Vielzahl gleicher Checks erneut auszuführen, so lohnt sich der Aufwand, das per Kommandozeile zu erledigen, recht schnell.

Nagios bekommt über den Socket nagios.cmd von den cgi-Scripts eine Eingabe nach folgendem Muster:

[1256832326] SCHEDULE_FORCED_SVC_CHECK;Kunde.Vpnhost;CPU Load;1256832321

Die Ziffern entsprechen dem UNIX-Timestamp, der Rest ist selbsterklärend.

Folgendes Scriptlet kann hier sehr helfen:

UNIXSTAMP=`date '+%s'`
printf "[%d] SCHEDULE_FORCED_SVC_CHECK;%s;Upgraded libs;%d\n" \
  ${UNIXSTAMP} Kunde.Vpnhost ${UNIXSTAMP} > /var/log/nagios/rw/nagios.cmd

Achtung, je nach Distro und Nagiosversion liegt nagios.cmd an unterschiedlichen Orten.