2009-05-26 15 views
8

He configurado una monitorización de nagios y he configurado el complemento check_http para buscar una URL específica en mi aplicación. Esa URL devuelve 'ok' o un mensaje de error.Cómo enviar información adicional en el correo electrónico de nagios

Mi nagios me envía un correo electrónico cuando detecta algo que no está "bien". Sin embargo, lo que obtengo es solo "HTTP CRITICAL - cadena no encontrada". Lo que me gustaría recibir en el correo electrónico es el mensaje de error real que se devuelve desde mi URL. He intentado usar la opción verbosa (-v). En la línea de comandos, me devuelve una solicitud completa que incluye mi mensaje de error, sin embargo, el correo electrónico de Nagios solo me enviará la primera línea de la respuesta detallada.

Lo que me gustaría obtener en la notificación de nagios es en lugar de cadena no encontrada para obtener el mensaje de error real. ¿Hay alguna forma de hacerlo usando el complemento check_http (o puede ser otro) o tengo que escribir el mío?

Edit: Hasta ahora he estado usando $ SERVICEOUTPUT $ en mi notificación por correo electrónico.

Respuesta

9

Parece que hay dos macros de salida de servicio que puede utilizar (de http://nagios.sourceforge.net/docs/3_0/macrolist.html) en su servicio de definición del comando de notificación:

  • $ SERVICEOUTPUT $: La primera línea de salida de texto desde el último control de servicio (es decir " Ping OK ").
  • $ LONGSERVICEOUTPUT $: salida de texto completo (aparte de la primera línea) de la última comprobación de servicio.

Si no tiene éxito con eso, supongo que la ruta más fácil es escribir un contenedor para check_http que ponga su mensaje de error en la primera línea de salida.

+0

Gracias, $ LONGSERVICEOUTPUT $ hizo el truco –

+0

Usted querrá agregar esto a su definición de comando notificar-servicio-por-correo electrónico, como se describe [aquí] (http://serverfault.com/questions/410020/full- status-information-in-nagios-email-notification) –

+0

Tenga en cuenta que Nagios rellena estas variables después de eliminar algunos caracteres confidenciales, por ejemplo, las etiquetas HTML no se conservan. Para la solución alternativa, vea http://serverfault.com/a/648781/256869. –

Cuestiones relacionadas