[comment]: # ({10fa1e13-10fa1e13})
# 2 Correlação global de eventos

[comment]: # ({/10fa1e13-10fa1e13})

[comment]: # ({41d0c2e3-91cbc9c1})
#### Visão geral

A correlação global de eventos permite alcançar todas as métricas monitoradas pelo Zabbix e criar correlações.

É possível correlacionar eventos criados por triggers completamente diferentes e aplicar as mesmas operações a todos eles.
Ao criar regras de correlação inteligentes, é realmente possível se livrar de milhares de notificações repetitivas e focar nas causas raiz de um problema!

A correlação global de eventos é um mecanismo poderoso, que permite desvincular-se da lógica de problema e resolução baseada em um único trigger.
Até agora, um único evento de problema era criado por um trigger e dependíamos desse mesmo trigger para a resolução do problema.
Não podíamos resolver um problema criado por um trigger com outro trigger.
Mas com a correlação de eventos baseada em tags de evento, podemos.

Por exemplo, um trigger de log pode relatar problemas na aplicação, enquanto um trigger de polling pode relatar que a aplicação está ativa e em execução.
Aproveitando as tags de evento, você pode marcar o trigger de log como *status:down* e o trigger de polling como *status:up*.
Então, em uma regra de correlação global, você pode relacionar esses triggers e atribuir uma operação apropriada a essa correlação, como fechar os eventos antigos.

Em outro caso de uso, a correlação global pode identificar triggers semelhantes e aplicar a mesma operação a eles.
E se pudéssemos receber apenas um relatório de problema por problema de porta de rede? Não haveria necessidade de relatar todos.
Isso também é possível com a correlação global de eventos.

A correlação global de eventos é configurada em **regras de correlação**.
Uma regra de correlação define como os novos eventos de problema são pareados com eventos de problema existentes e o que fazer em caso de correspondência (fechar o novo evento, fechar eventos antigos correspondentes gerando os respectivos eventos OK).
Se um problema for fechado por correlação global, isso será informado na coluna *Info* em *Monitoring* > *Problems*.

A configuração da correlação global está disponível apenas para usuários com nível Super Admin.

::: noteimportant
A correlação de eventos deve ser configurada com muito cuidado, pois pode afetar negativamente o desempenho do processamento de eventos ou, se configurada incorretamente, fechar mais eventos do que o pretendido (no pior caso, até mesmo todos os eventos de problema podem ser fechados).
:::

Para configurar a correlação global com **segurança**, observe as seguintes dicas importantes:

-   Reduza o escopo da correlação.
Sempre defina uma tag exclusiva para o novo evento que será pareado com eventos antigos e use a condição de correlação *New event tag name*.
-   Adicione uma condição explícita de evento antigo ao usar **Close old events**.
Sempre adicione pelo menos uma condição de *Old event* (por exemplo, *Old event tag name*, *Old event tag value* ou *Event tag pair*) ao selecionar **Close old events** — caso contrário, a regra poderá corresponder e fechar eventos de problema existentes não relacionados (no pior caso, todos os problemas).
Prefira **Event tag pair** para corresponder valores em tempo de execução (host:port, session id etc.) e restrinja ainda mais a correspondência por host ou grupo de hosts, quando possível.
-   Evite usar nomes de tags comuns que possam acabar sendo usados por diferentes configurações de correlação.
-   Mantenha o número de regras de correlação limitado àquelas de que você realmente precisa.

Veja também: [problemas conhecidos](/manual/installation/known_issues#global-event-correlation).

[comment]: # ({/41d0c2e3-91cbc9c1})

[comment]: # ({b174f7c5-4d55e723})
#### Configuração

Para configurar regras de correlação de eventos globalmente:

-   Vá para *Coleta de dados* > *Correlação de eventos*
-   Clique em *Criar correlação de eventos* à direita (ou no nome da correlação para editar uma regra existente)
-   Insira os parâmetros da regra de correlação no formulário

![correlation\_rule.png](../../../../assets/en/manual/config/event_correlation/correlation_rule.png)

Todos os campos obrigatórios estão marcados com um asterisco vermelho.

|Parâmetro|Descrição|
|--|--------|
|*Nome*|Nome único da regra de correlação.|
|*Tipo de cálculo*|As seguintes opções de cálculo de condições estão disponíveis:<br>**E** - todas as condições devem ser atendidas<br>**Ou** - basta que uma condição seja atendida<br>**E/Ou** - E com tipos de condição diferentes e Ou com o mesmo tipo de condição<br>**Expressão personalizada** - uma fórmula de cálculo definida pelo usuário para avaliar as condições da ação. Deve incluir todas as condições (representadas por letras maiúsculas A, B, C, ...) e pode incluir espaços, tabulações, parênteses ( ), **and** (diferencia maiúsculas de minúsculas), **or** (diferencia maiúsculas de minúsculas), **not** (diferencia maiúsculas de minúsculas).|
|*Condições*|Lista de condições. Veja abaixo para detalhes sobre como configurar uma condição.|
|*Descrição*|Descrição da regra de correlação.|
|*Operações*|Marque a caixa de seleção da operação a ser executada quando o evento for correlacionado. As seguintes operações estão disponíveis:<br>**Fechar eventos antigos** - fecha eventos antigos quando um novo evento ocorre. Sempre adicione uma condição baseada no evento antigo ao usar a operação *Fechar eventos antigos* ou todos os problemas existentes poderão ser fechados.<br>**Fechar novo evento** - fecha o novo evento quando ele ocorre.<br><br>**Atenção!**<br>Não deixe as condições de evento antigo/novo vazias ao usar *Fechar eventos antigos*/*Fechar novo evento*. Se você selecionar a operação *Fechar eventos antigos* sem adicionar uma condição que corresponda ao evento antigo, o Zabbix pode corresponder a todos os eventos antigos existentes e fechá-los. Sempre adicione uma condição explícita de evento antigo (por exemplo, *Nome da tag do evento antigo* ou *Par de tags de evento*) ao usar *Fechar eventos antigos*. Por exemplo, uma regra que usa apenas uma *Condição de novo evento* e a *operação Fechar eventos antigos* corresponderá a todos os eventos antigos que atendam aos critérios de evento antigo (ausentes) - fechando efetivamente problemas antigos.|
|*Habilitado*|Se você marcar esta caixa de seleção, a regra de correlação será habilitada.|

Para configurar os detalhes de uma nova condição, clique em ![](../../../../assets/en/manual/config/add_link.png) no bloco Condições.
Uma janela pop-up será aberta onde você pode editar os detalhes da condição.

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

|Parâmetro|Descrição|
|--|--------|
|*Nova condição*|Selecione uma condição para correlacionar eventos.<br>*Nota* que se nenhuma condição de evento antigo for especificada, todos os eventos antigos poderão ser correspondidos e fechados. Da mesma forma, se nenhuma condição de novo evento for especificada, todos os novos eventos poderão ser correspondidos e fechados.<br>As seguintes condições estão disponíveis:<br>**Nome da tag do evento antigo** - especifique o nome da tag do evento antigo para correspondência.<br>**Nome da tag do novo evento** - especifique o nome da tag do novo evento para correspondência.<br>**Grupo de hosts do novo evento** - especifique o grupo de hosts do novo evento para correspondência.<br>**Par de tags de evento** - especifique o nome da tag do novo evento e o nome da tag do evento antigo para correspondência. Neste caso, haverá uma correspondência se os **valores** das tags em ambos os eventos coincidirem. Os *nomes* das tags não precisam coincidir.<br>Esta opção é útil para corresponder valores em tempo de execução, que podem não ser conhecidos no momento da configuração (veja também [Exemplo](/manual/config/event_correlation/global#example)).<br>**Valor da tag do evento antigo** - especifique o nome e o valor da tag do evento antigo para correspondência, usando os seguintes operadores:<br>*igual* - possui o valor da tag do evento antigo<br>*diferente de* - não possui o valor da tag do evento antigo<br>*contém* - possui a string no valor da tag do evento antigo<br>*não contém* - não possui a string no valor da tag do evento antigo<br>**Valor da tag do novo evento** - especifique o nome e o valor da tag do novo evento para correspondência, usando os seguintes operadores:<br>*igual* - possui o valor da tag do novo evento<br>*diferente de* - não possui o valor da tag do novo evento<br>*contém* - possui a string no valor da tag do novo evento<br>*não contém* - não possui a string no valor da tag do novo evento|

::: notewarning
Como é possível uma configuração incorreta, quando tags de evento semelhantes podem ser criadas para problemas **não relacionados**, revise os casos descritos abaixo!
:::

-   As tags reais e os valores das tags só se tornam visíveis quando um trigger dispara.
Se a expressão regular usada for inválida, ela será silenciosamente substituída por uma string \*UNKNOWN\*.
Se o evento inicial de problema com um valor de tag \*UNKNOWN\* for perdido, podem aparecer eventos OK subsequentes com o mesmo valor de tag \*UNKNOWN\* que podem fechar eventos de problema que não deveriam ter sido fechados.
-   Se um usuário usar a macro {ITEM.VALUE} sem funções de macro como valor da tag, a limitação de 255 caracteres se aplica.
Quando as mensagens de log são longas e os primeiros 255 caracteres não são específicos, isso também pode resultar em tags de evento semelhantes para problemas não relacionados.

[comment]: # ({/b174f7c5-4d55e723})

[comment]: # ({7e8aa3d1-c1c16a0f})
#### Exemplo

Pare eventos de problema repetitivos da mesma porta de rede.

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

Esta regra de correlação global irá correlacionar problemas se os valores das tags *host* e *port* existirem no trigger e forem os mesmos no evento original e no novo.

A operação irá fechar novos eventos de problema na mesma porta de rede, mantendo apenas o problema original aberto.

[comment]: # ({/7e8aa3d1-c1c16a0f})
