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.
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.
Para empezar, es posible que desee configurar una métrica que supervise un archivo de registro, por ejemplo:
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.
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:
Si se configura correctamente, podrá ver los eventos de problemas etiquetados por aplicación y asociados con su resolución en Monitoreo → Problemas.
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.
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.