1 Correlación de eventos basada en iniciadores

Descripción general

La correlación de eventos basada en iniciadores permite correlacionar problemas separados informados por un iniciador.

Aunque generalmente un evento OK puede cerrar todos los eventos de problema creados por un iniciador, hay casos en los que se necesita un enfoque más detallado. Por ejemplo, al monitorear archivos de registro, es posible que desee descubrir ciertos problemas en un archivo de registro y cerrarlos individualmente en lugar de todos juntos.

Este es el caso de los iniciadores que tienen el parámetro "Modo de generación del evento de problema" configurado a Múltiple. Estos iniciadores se utilizan normalmente para la monitorización de registros, procesamiento de capturas, etc.

Es posible en Zabbix relacionar eventos problemáticos basados en el etiquetado. Las etiquetas se utilizan para extraer valores y crear una identificación para eventos problemáticos. Aprovechando eso, los problemas también se pueden cerrar individualmente en función de la etiqueta coincidente.

En otras palabras, el mismo iniciador puede crear eventos separados identificados por la etiqueta del evento. Por lo tanto, los eventos de problema se pueden identificar uno por uno. y cerrado por separado en función de la identificación por la etiqueta de evento.

Cómo funciona

En el monitoreo de registros, puede encontrar líneas similares a estas:

Línea 1: Servicio 1 detenido
       Línea 2: Servicio 2 detenido
       Línea 3: Servicio 1 fue reiniciado
       Línea 4: Servicio 2 fue reiniciado

La idea de la correlación de eventos es poder hacer coincidir el evento problemático de la Línea 1 con la resolución de la Línea 3 y el evento problemático de la Línea 2 con la resolución de la Línea 4, y cerrar estos problemas uno por uno:

Línea 1: Servicio 1 detenido
       Línea 3: Servicio 1 fue reiniciado #problema de la Línea 1 cerrado
       
       Línea 2: Servicio 2 detenido
       Línea 4: Servicio 2 fue reiniciado #problema de la Línea 2 cerrado

Para hacer esto, debe etiquetar estos eventos relacionados como, por ejemplo, "Servicio 1" y "Servicio 2". Esto se puede hacer aplicando una expresión regular a la línea de registro para extraer el valor de la etiqueta. Luego, cuando se crean eventos, se etiquetan como "Servicio 1" y "Servicio 2" respectivamente y el problema se puede relacionar con la resolución.

Configuración

Métrica

Para empezar, es posible que desee configurar una métrica que supervise un archivo de registro, por ejemplo:

log[/var/log/syslog]

Con la métrica configurada, espere un minuto para que se realicen los cambios de configuración definidos y luego vaya a Últimos datos para asegurarse de que la métrica haya comenzado a recopilar datos.

Iniciador

Con la métrica funcionando, debe configurar el iniciador. Es importante decidir a qué entradas del archivo de registro vale la pena prestar atención. Por ejemplo, la siguiente expresión de iniciador buscará una cadena como 'Stopping' para señalar problemas potenciales:

find(/My host/log[/var/log/syslog],,"regexp","Stopping")=1

Para asegurarse de que cada línea que contenga la cadena "Stopping" se considere un problema, configure también el Modo de generación de eventos de problema en la configuración del iniciador en 'Múltiple'.

Luego defina una expresión de recuperación. La siguiente expresión de recuperación resolverá todos los problemas si se encuentra una línea de registro que contenga la cadena "Starting":

find(/My host/log[/var/log/syslog],,"regexp","Starting")=1

Dado que no queremos eso, es importante asegurarnos de alguna manera de que los problemas raíz correspondientes estén cerrados, no solo todos los problemas. Ahí es donde el etiquetado puede ayudar.

Los problemas y las resoluciones se pueden hacer coincidir especificando una etiqueta en la configuración del iniciador. Se deben realizar las siguientes configuraciones:

  • Modo de generación de eventos de problemas: Múltiple
  • El evento OK se cierra: Todos los problemas si los valores de las etiquetas coinciden
  • Ingrese el nombre de la etiqueta para la coincidencia de eventos

  • configure las etiquetas para extraer valores de etiquetas de las líneas de registro

Si se configura correctamente, podrá ver los eventos de problemas etiquetados por aplicación y asociados con su resolución en MonitoreoProblemas.

Debido a que es posible que se produzcan errores de configuración, cuando se puedan crear etiquetas de eventos similares para problemas no relacionados, revise los casos que se describen a continuación.

  • Con dos aplicaciones que escriben mensajes de error y recuperación en el mismo archivo de registro, un usuario puede decidir utilizar dos etiquetas service en el mismo iniciador con diferentes valores de etiqueta utilizando expresiones regulares independientes en los valores de etiqueta para extraer los nombres de, por ejemplo, el servicio A y el servicio B de la macro {ITEM.VALUE} (por ejemplo, cuando los formatos de los mensajes difieren). Sin embargo, esto puede no funcionar como se planeó si no hay una coincidencia con las expresiones regulares.

Las expresiones regulares que no coinciden producirán valores de etiqueta vacíos y un único valor de etiqueta vacío en los eventos de problema y OK es suficiente para correlacionarlos. Por lo tanto, un mensaje de recuperación del servicio A puede cerrar accidentalmente un mensaje de error del servicio B.

  • Las etiquetas y los valores de las etiquetas reales solo se vuelven visibles cuando se activa un iniciador. Si la expresión regular utilizada no es válida, se reemplaza silenciosamente con una cadena *UNKNOWN*. Si se omite el evento de problema inicial con un valor de etiqueta *UNKNOWN*, pueden aparecer eventos OK posteriores con el mismo valor de etiqueta *UNKNOWN* que pueden cerrar eventos de problema que no deberían haberse cerrado.
  • Si un usuario utiliza la macro {ITEM.VALUE} sin funciones de macro como valor de etiqueta, se aplica la limitación de 255 caracteres. Cuando los mensajes de registro son largos y los primeros 255 caracteres no son específicos, esto también puede generar etiquetas de eventos similares para problemas no relacionados.