[comment]: # ({69aa4121-69aa4121})
# 1 Correlación de eventos basada en iniciadores

[comment]: # ({/69aa4121-69aa4121})

[comment]: # ({61c380c5-f01b1f93})
#### Descripción general

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

Si bien generalmente un evento OK puede cerrar todos los eventos problemáticos 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 DE EVENTOS PROBLEMA* establecido en *Múltiple*. Estos iniciadores se utilizan normalmente para la supervisión de registros,
procesamiento de atrapadores, etc.

Es posible en Zabbix relacionar eventos de problemas basados en el
[etiquetado](/manual/config/tagging). Las etiquetas se utilizan para extraer valores y
crear identificación para eventos problemáticos. Aprovechando eso,
los problemas también se pueden cerrar individualmente según la etiqueta coincidente.

En otras palabras, el mismo iniciador puede crear eventos separados identificados
por la etiqueta del evento. Por lo tanto, los eventos problemáticos se pueden identificar uno por uno
y ser cerrados por separado según la identificación mediante la etiqueta de evento.

[comment]: # ({/61c380c5-f01b1f93})

[comment]: # ({12f3de38-12f3de38})
#### Cómo funciona

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

    Línea 1: Aplicación 1 detenida
    Line2: Aplicación 2 detenida
    Línea 3: se reinició la aplicación 1
    Línea 4: se reinició la aplicación 2

La idea de la correlación de eventos es poder hacer coincidir el evento del problema.
de Line1 a la resolución de Line3 y el evento de problema de Line2
a la resolución de Line4, y cierre estos problemas uno por uno:

    Línea 1: Aplicación 1 detenida
    Línea 3: la aplicación 1 se reinició #problema de la línea 1 cerrada

    Line2: Aplicación 2 detenida
    Línea 4: se reinició la aplicación 2 #problema de la línea 2 cerrada

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

[comment]: # ({/12f3de38-12f3de38})

[comment]: # ({5d32b87c-5d32b87c})
Configuración

[comment]: # ({/5d32b87c-5d32b87c})

[comment]: # ({8d1971f2-8d1971f2})
##### Elemento

Para empezar, es posible que desee configurar un elemento que supervise un archivo de registro,
por ejemplo:

    registro[/var/registro/syslog]

![](../../../../assets/en/manual/config/event_correlation/correlation_item.png)

Con el elemento configurado, espere un minuto para que se realicen los cambios de configuración.
recogido y luego vaya a [Último
data](/manual/web_interface/frontend_sections/monitoring/latest_data) para
asegúrese de que el elemento haya comenzado a recopilar datos.

[comment]: # ({/8d1971f2-8d1971f2})

[comment]: # ({57e60c4e-57e60c4e})
##### Disparador

Con el elemento funcionando, debe configurar el
[disparador](/manual/config/triggers/trigger). Es importante decidir
a qué entradas en el archivo de registro vale la pena prestar atención. Por ejemplo,
la siguiente expresión desencadenante buscará una cadena como
'Parar' para señalar posibles problemas:

    find(/Mi servidor/registro[/var/log/syslog],"regexp","Deteniendo")=1

::: notaimportante
Para asegurarse de que cada línea que contiene la cadena
"Detener" se considera un problema, también establezca el evento * Problema
modo de generación* en configuración de disparador a '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 contiene la cadena
"Comenzando":

    find(/Mi servidor/registro[/var/log/syslog],"regexp","Iniciando")=1

Como no queremos eso, es importante asegurarse de alguna manera de que el
se cierran los problemas raíz correspondientes, no solo todos los problemas. Ese es
donde el etiquetado puede ayudar.

Los problemas y las resoluciones pueden coincidir especificando una etiqueta en el
configuración del disparador. Se deben realizar los siguientes ajustes:

- *Modo de generación de eventos problemáticos*: 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

![](../../../../assets/en/manual/config/event_correlation/correlation_trigger.png)

- configure las [etiquetas](/manual/config/tagging) para extraer los valores de las etiquetas
    de las líneas de registro

![](../../../../assets/en/manual/config/event_correlation/correlation_trigger2.png)

Si se configura correctamente, podrá ver los eventos problemáticos etiquetados
por aplicación y emparejados con su resolución en *Monitoreo* →
*Problemas*.

![](../../../../assets/en/manual/config/matched_problems.png){ancho="600"}

::: nota de advertencia
Porque la mala configuración es posible, cuando similar
se pueden crear etiquetas de eventos para problemas **no relacionados**, revise la
casos descritos a continuación!
:::

- Con dos aplicaciones que escriben mensajes de error y recuperación en el
    mismo archivo de registro, un usuario puede decidir usar dos etiquetas *Aplicación* en el
    mismo activador con diferentes valores de etiqueta mediante el uso de
    expresiones en los valores de la etiqueta para extraer los nombres de, digamos,
    aplicación A y aplicación B de la macro {ITEM.VALUE} (por ej.
    cuando los formatos de mensaje difieren). Sin embargo, esto puede no funcionar como
    planificado si no hay ninguna coincidencia con las expresiones regulares.
    Las expresiones regulares que no coincidan generarán valores de etiqueta vacíos y un único valor vacío.
    el valor de la etiqueta en los eventos problem y OK es suficiente para correlacionarlos.
    Entonces, un mensaje de recuperación de la aplicación A puede cerrar accidentalmente una
    mensaje de error de la aplicación B.

```{=html}
<!-- -->
```
- Las etiquetas reales y los valores de las etiquetas solo se vuelven visibles cuando se activa un disparador.
    Si la expresión regular utilizada no es válida, se reemplaza silenciosamente
    con una cadena \*UNKNOWN\*. Si el evento problema inicial con un
    \*DESCONOCIDO\* se pierde el valor de la etiqueta, puede aparecer OK posterior
    eventos con el mismo valor de etiqueta \*UNKNOWN\* que pueden cerrar el problema
    eventos que no deberían haber cerrado.

```{=html}
<!-- -->
```
- Si un usuario usa la macro {ITEM.VALUE} sin funciones de macro como
    valor de la etiqueta, se aplica la limitación de 255 caracteres. Cuando registrar mensajes
    son largos y los primeros 255 caracteres no son específicos, esto puede
    también dan como resultado etiquetas de eventos similares para problemas no relacionados.

[comment]: # ({/57e60c4e-57e60c4e})
