Cómo ver valores SNMP recuperados previamente en Nagios

Cómo ver valores SNMP recuperados previamente en Nagios

He configurado con éxito Nagios 3.2.3 para monitorear varios agentes SNMP.

Por ejemplo, estoy monitoreando el OID RFC1213-MIB::udpOutDatagrams.0 en uno de esos agentes.

Esto está funcionando bien. Puedo obtener la siguiente información sobre los valores actuales de un OID (un servicio en Nagios):

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)

Sin embargo, parece que no puedo entender cómo ver los valores anteriores.

Por ejemplo, quiero saber cuántos datagramas envió un agente hoy.

Todo lo que puedo encontrar en la interfaz web son informes de disponibilidad.

Sería fantástico si pudiera generar un informe que utilice los valores recuperados reales.

Si esto no es posible, me gustaría saber dónde puedo encontrar los archivos de registro, para al menos poder recuperar esta información de una forma u otra.

Respuesta1

Nagios no registrará automáticamente estos valores. Tienes que habilitar esto manualmente. Cambie o agregue los siguientes parámetros en su 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

Verifique que su commands.cfg contenga el siguiente comando:

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
}

Esta configuración permitirá el registro de datos de rendimiento en el archivo especificado: /var/nagios/perfdata.log

información relacionada