So zeigen Sie zuvor abgerufene SNMP-Werte in Nagios an

So zeigen Sie zuvor abgerufene SNMP-Werte in Nagios an

Ich habe Nagios 3.2.3 erfolgreich für die Überwachung mehrerer SNMP-Agenten konfiguriert.

Beispielsweise überwache ich die OID RFC1213-MIB::udpOutDatagrams.0 auf einem dieser Agenten.

Das funktioniert einwandfrei. Ich kann die folgenden Informationen über die aktuellen Werte einer OID (ein Dienst in Nagios) abrufen:

Current Status:   OK   (for 1d 9h 46m 24s)
Status Information: SNMP OK - 55886
Performance Data:   RFC1213-MIB::udpOutDatagrams.0=55886c
Current Attempt:    1/3  (HARD state)
Last Check Time:    06-02-2015 16:17:25
Check Type: ACTIVE
Check Latency / Duration:   0.081 / 5.304 seconds
Next Scheduled Check:   06-02-2015 16:27:25
Last State Change:  06-01-2015 06:37:25
Last Notification:  N/A (notification 0)
Is This Service Flapping?     NO   (0.00% state change)
In Scheduled Downtime?    NO  
Last Update:    06-02-2015 16:23:49  ( 0d 0h 0m 0s ago)

Ich kann jedoch nicht herausfinden, wie ich vorherige Werte anzeigen kann.

Ich möchte beispielsweise herausfinden, wie viele Datagramme ein Agent heute gesendet hat.

In der Weboberfläche finde ich lediglich Verfügbarkeitsberichte.

Es wäre toll, wenn ich einen Bericht erstellen könnte, der die tatsächlich abgerufenen Werte verwendet.

Wenn dies nicht möglich ist, würde ich gerne wissen, wo ich die Protokolldateien finden kann, damit ich diese Informationen zumindest auf die eine oder andere Weise abrufen kann.

Antwort1

Nagios loggt diese Werte nicht automatisch. Sie müssen dies manuell aktivieren. Ändern oder ergänzen Sie die folgenden Parameter in Ihrer nagios.cfg:

process_performance_data=1
service_perfdata_file=/var/nagios/perfdata.log
service_perfdata_file_template=[SERVICEPERFDATA]\t$TIMET$\t$HOSTNAME$\t$SERVICEDESC$\t$SERVICEEXECUTIONTIME$\t$SERVICELATENCY$\t$SERVICEOUTPUT$\t$SERVICEPERFDATA$
service_perfdata_file_mode=a
service_perfdata_file_processing_interval=30
service_perfdata_file_processing_command=process-service-perfdata

Stellen Sie sicher, dass Ihre commands.cfg den folgenden Befehl enthält:

define command{
    command_name    process-service-perfdata
    command_line    /usr/bin/printf "%b" "$LASTSERVICECHECK$\t$HOSTNAME$\t$SERVICEDESC$\t$SERVICESTATE$\t$SERVICEATTEMPT$\t$SERVICESTATETYPE$\t$SERVICEEXECUTIONTIME$\t$SERVICELATENCY$\t$SERVICEOUTPUT$\t$SERVICEPERFDATA$\n" >> /usr/local/nagios/var/service-perfdata.out
}

Diese Einstellungen aktivieren die Protokollierung von Leistungsdaten in der angegebenen Datei: /var/nagios/perfdata.log

verwandte Informationen