2 Corrélation globale des événements

Vue d'ensemble

La corrélation globale des événements permet d'agir sur toutes les métriques surveillées par Zabbix et de créer des corrélations.

Il est possible de corréler des événements créés par des déclencheurs complètement différents et de leur appliquer les mêmes opérations. En créant des règles de corrélation intelligentes, il est en effet possible de vous épargner des milliers de notifications répétitives et de vous concentrer sur les causes racines d'un problème !

La corrélation globale des événements est un mécanisme puissant, qui vous permet de vous affranchir de la logique de problème et de résolution basée sur un seul déclencheur. Jusqu'à présent, un seul événement de problème était créé par un seul déclencheur et nous dépendions de ce même déclencheur pour la résolution du problème. Nous ne pouvions pas résoudre un problème créé par un déclencheur avec un autre déclencheur. Mais avec la corrélation d'événements basée sur le balisage des événements, c'est possible.

Par exemple, un déclencheur de journal peut signaler des problèmes d'application, tandis qu'un déclencheur d'interrogation peut signaler que l'application est opérationnelle. En tirant parti des balises d'événement, vous pouvez baliser le déclencheur de journal avec status:down et le déclencheur d'interrogation avec status:up. Ensuite, dans une règle de corrélation globale, vous pouvez relier ces déclencheurs et attribuer à cette corrélation une opération appropriée, comme la fermeture des anciens événements.

Dans un autre cas d'utilisation, la corrélation globale peut identifier des déclencheurs similaires et leur appliquer la même opération. Et si nous pouvions n'obtenir qu'un seul rapport de problème par problème de port réseau ? Il n'est pas nécessaire de tous les signaler. Cela est également possible avec la corrélation globale des événements.

La corrélation globale des événements est configurée dans les règles de corrélation. Une règle de corrélation définit comment les nouveaux événements de problème sont associés aux événements de problème existants et quoi faire en cas de correspondance (fermer le nouvel événement, fermer les anciens événements correspondants en générant les événements OK correspondants). Si un problème est fermé par corrélation globale, cela est indiqué dans la colonne Info de Monitoring > Problems.

La configuration des règles de corrélation globale est disponible uniquement pour les utilisateurs de niveau Super Admin.

La corrélation d'événements doit être configurée avec beaucoup de précaution, car elle peut affecter négativement les performances du traitement des événements ou, en cas de mauvaise configuration, fermer plus d'événements que prévu (dans le pire des cas, même tous les événements de problème pourraient être fermés).

Pour configurer la corrélation globale en toute sécurité, respectez les conseils importants suivants :

  • Réduisez la portée de la corrélation. Définissez toujours une balise unique pour le nouvel événement qui est associé aux anciens événements et utilisez la condition de corrélation New event tag name.
  • Ajoutez une condition explicite sur les anciens événements lors de l'utilisation de Close old events. Ajoutez toujours au moins une condition Old event (par exemple, Old event tag name, Old event tag value ou Event tag pair) lors de la sélection de Close old events — sinon, la règle peut correspondre à des événements de problème existants non liés et les fermer (dans le pire des cas, tous les problèmes). Préférez Event tag pair pour faire correspondre des valeurs d'exécution (host:port, session id, etc.), et affinez davantage la correspondance par hôte ou groupe d'hôtes lorsque cela est possible.
  • Évitez d'utiliser des noms de balises courants qui pourraient finir par être utilisés par différentes configurations de corrélation.
  • Limitez le nombre de règles de corrélation à celles dont vous avez réellement besoin.

Voir aussi : problèmes connus.

Configuration

Pour configurer globalement les règles de corrélation d'événements :

  • Allez dans Collecte de données > Corrélation d'événements
  • Cliquez sur Créer une corrélation d'événements à droite (ou sur le nom de la corrélation pour modifier une règle existante)
  • Saisissez les paramètres de la règle de corrélation dans le formulaire

correlation\_rule.png

Tous les champs de saisie obligatoires sont marqués d'un astérisque rouge.

Paramètre Description
Nom Nom unique de la règle de corrélation.
Type de calcul Les options suivantes sont disponibles pour le calcul des conditions :
Et - toutes les conditions doivent être remplies
Ou - il suffit qu'une condition soit remplie
Et/Ou - ET avec des types de conditions différents et OU avec le même type de condition
Expression personnalisée - une formule de calcul définie par l'utilisateur pour évaluer les conditions de l'action. Elle doit inclure toutes les conditions (représentées par des lettres majuscules A, B, C, ...) et peut inclure des espaces, des tabulations, des parenthèses ( ), and (sensible à la casse), or (sensible à la casse), not (sensible à la casse).
Conditions Liste des conditions. Voir ci-dessous pour plus de détails sur la configuration d'une condition.
Description Description de la règle de corrélation.
Opérations Cochez la case de l'opération à exécuter lorsqu'un événement est corrélé. Les opérations suivantes sont disponibles :
Fermer les anciens événements - ferme les anciens événements lorsqu'un nouvel événement se produit. Ajoutez toujours une condition basée sur l'ancien événement lors de l'utilisation de l'opération Fermer les anciens événements, sinon tous les problèmes existants pourraient être fermés.
Fermer le nouvel événement - ferme le nouvel événement lorsqu'il se produit.

Avertissement !
Ne laissez pas les conditions d'ancien/nouvel événement vides lorsque vous utilisez Fermer les anciens événements/Fermer le nouvel événement. Si vous sélectionnez l'opération Fermer les anciens événements sans ajouter de condition correspondant à l'ancien événement, Zabbix peut faire correspondre tous les anciens événements existants et les fermer. Ajoutez toujours une condition explicite d'ancien événement (par exemple, Nom de tag de l'ancien événement ou Paire de tags d'événement) lorsque vous utilisez Fermer les anciens événements. Par exemple, une règle qui utilise uniquement une Condition de nouvel événement et l'opération Fermer les anciens événements correspondra à tous les anciens événements qui satisfont aux critères d'ancien événement (manquants) — fermant ainsi effectivement les anciens problèmes.
Activé Si vous cochez cette case, la règle de corrélation sera activée.

Pour configurer les détails d'une nouvelle condition, cliquez sur dans le bloc Conditions. Une fenêtre contextuelle s'ouvrira, dans laquelle vous pourrez modifier les détails de la condition.

Paramètre Description
Nouvelle condition Sélectionnez une condition pour corréler les événements.
Notez que si aucune condition d'ancien événement n'est spécifiée, tous les anciens événements peuvent être mis en correspondance et fermés. De même, si aucune condition de nouvel événement n'est spécifiée, tous les nouveaux événements peuvent être mis en correspondance et fermés.
Les conditions suivantes sont disponibles :
Nom de tag de l'ancien événement - spécifiez le nom du tag de l'ancien événement pour la mise en correspondance.
Nom de tag du nouvel événement - spécifiez le nom du tag du nouvel événement pour la mise en correspondance.
Groupe d'hôtes du nouvel événement - spécifiez le groupe d'hôtes du nouvel événement pour la mise en correspondance.
Paire de tags d'événement - spécifiez le nom du tag du nouvel événement et le nom du tag de l'ancien événement pour la mise en correspondance. Dans ce cas, il y aura correspondance si les valeurs des tags dans les deux événements correspondent. Les noms des tags n'ont pas besoin de correspondre.
Cette option est utile pour faire correspondre des valeurs d'exécution, qui peuvent ne pas être connues au moment de la configuration (voir aussi Exemple).
Valeur de tag de l'ancien événement - spécifiez le nom et la valeur du tag de l'ancien événement pour la mise en correspondance, à l'aide des opérateurs suivants :
égal à - possède la valeur du tag de l'ancien événement
différent de - ne possède pas la valeur du tag de l'ancien événement
contient - contient la chaîne dans la valeur du tag de l'ancien événement
ne contient pas - ne contient pas la chaîne dans la valeur du tag de l'ancien événement
Valeur de tag du nouvel événement - spécifiez le nom et la valeur du tag du nouvel événement pour la mise en correspondance, à l'aide des opérateurs suivants :
égal à - possède la valeur du tag du nouvel événement
différent de - ne possède pas la valeur du tag du nouvel événement
contient - contient la chaîne dans la valeur du tag du nouvel événement
ne contient pas - ne contient pas la chaîne dans la valeur du tag du nouvel événement

Comme une mauvaise configuration est possible, lorsque des tags d'événement similaires peuvent être créés pour des problèmes sans rapport, veuillez examiner les cas décrits ci-dessous !

  • Les tags réels et les valeurs de tag ne deviennent visibles que lorsqu'un déclencheur se déclenche. Si l'expression régulière utilisée est invalide, elle est silencieusement remplacée par une chaîne *UNKNOWN*. Si l'événement de problème initial avec une valeur de tag *UNKNOWN* est manqué, des événements OK ultérieurs avec la même valeur de tag *UNKNOWN* peuvent apparaître et fermer des événements de problème qu'ils n'auraient pas dû fermer.
  • Si un utilisateur utilise la macro {ITEM.VALUE} sans fonctions de macro comme valeur de tag, la limitation à 255 caractères s'applique. Lorsque les messages de journal sont longs et que les 255 premiers caractères ne sont pas spécifiques, cela peut également entraîner des tags d'événement similaires pour des problèmes sans rapport.

Exemple

Empêchez les événements de problème répétitifs provenant du même port réseau.

Cette règle globale de corrélation mettra en corrélation les problèmes si les valeurs des tags host et port existent sur le déclencheur et qu’elles sont identiques dans l’événement d’origine et le nouvel événement.

L’opération fermera les nouveaux événements de problème sur le même port réseau, en ne laissant ouvert que le problème d’origine.