Lösung 1:
Manchmal finde ich es schwierig, genau herauszufinden, was ein Plugin tut. Um dies herauszufinden, versetze ich Nagios in den Debug-Modus mit der Konfiguration wie dieser. debug_level=2048
Mit Nagios im Debug-Modus beende ich einfach die debug_log
Datei debug_file=/var/log/nagios3/nagios.debug
. Erzwingen Sie eine Überprüfung und Sie werden genau sehen, wie der Befehl ausgeführt wird. Ich würde diese Einstellung jedoch normalerweise nicht aktiviert lassen, sie ist sehr ausführlich und füllt Ihre Protokolldatei mit einer schnellen Geschwindigkeit.
Lösung 2:
Es ist ziemlich einfach. Einfach cd (oder nicht) in das Plugins-Verzeichnis (dieser Verzeichnisort variiert, je nachdem, wie Sie es installiert haben, aber überprüfen Sie /usr/local/nagios oder /usr/lib/nagios).
Suchen Sie das Plugin, das Sie ausführen möchten (wenn Sie sich nicht sicher sind, vergleichen Sie, was Sie in Ihrem Plugins-Verzeichnis auf Ihrer Linux-Box sehen, mit den Plugins, die sich hier befinden:http://exchange.nagios.org/directory/Plugins, oder versuchen Sie es auszuführen "./plugin-name -h", um Hilfeinformationen zum Plugin zu erhalten).
Die Methode zur Verwendung eines dieser "Plugins" von der Befehlszeile aus ist die gleiche wie bei jedem anderen Linux-Skript:Führen Sie einfach "./plugin-name" mit den entsprechenden Flags aus, die Sie überprüfen möchten, und voila!
Lösung 3:
Ich nehme eine etwas brutalere Richtung als @Zoredache, ich melde mich beim Nagios-Server an und mache "while true; do ps awwlx | grep NAGIOS_CHECK_NAME; done", während ich eine erneute Überprüfung des Dienstes erzwinge, wobei NAGIOS_CHECK_NAME entweder ist Teil des Prüfnamens oder die IP des gesuchten Servers. Normalerweise erscheint innerhalb weniger Sekunden der vollständige Prüfbefehl und ich beende dann die While-Schleife und führe den Prüfbefehl aus.
Ja, es ist totale Brute-Force, aber
Lösung 4:
Vielleicht möchten Sie auch das Plugin „Capture“ ausprobieren. Es macht im Wesentlichen dasselbe wie ein Debug-Level von 2048, kann aber pro Plugin verwendet werden. Dies ergibt weniger Ausgabe zum Durchsuchen.
http://www.waggy.at/nagios/capture_plugin.htm
Lösung 5:
Gehen Sie in Ihr Plugin-Verzeichnis – in meinem Beispiel ist es
/usr/lib64/nagios/plugins/
Geben Sie Ihren Plugin-Namen ein - in meinem Beispiel ist es
check_tcp
Führen Sie nun den vollständigen Befehl aus - (Plugin-Name) -H (Hostname) -p (Portnummer)
/usr/lib64/nagios/plugins/check_tcp -H myservername -p 8080
Ausgabe
TCP OK - 0.004 second response time on port 8080|time=0.004146s;;;0.000000;10.000000
In diesem Beispiel ist die Portnummer jedoch optional
ein weiteres Beispiel -
in Ihrer Konfigurationsdatei, die in etwa so aussieht (myserver.cfg), und Sie möchten check_cpu von der Befehlszeile aus ausführen
define service{
use generic-service
host_name myserver
servicegroups windows
service_description CPU
contact_groups sysadmin_email_only
notification_options w,c,r
check_command check_nrpe!check_cpu
}
sofort prüfen (ohne GUI grün oder rot)
Versuchen Sie Folgendes - (vollständiger Pfad des Plugins) - H (Servername) -c (Prüfname)
/usr/lib64/nagios/plugins/check_nrpe -H spc7atc01 -c check_cpu
Ausgabe -
OK CPU Load ok.|'5'=4;80;90; '10'=3;80;90; '15'=3;80;90;
Das ist es