6 Balisage
Aperçu
Les tags se composent d'un nom de tag et d'une valeur de tag.
Lors du marquage d'entités, vous pouvez utiliser uniquement le nom ou l'associer à une valeur (par exemple, mysql, jira, target:mysql, service:jira, etc.).
Les tags peuvent être définis pour विभिन्न entités :
- Modèles
- Hôtes
- Éléments
- Scénarios web
- Déclencheurs
- Services
- Éléments et déclencheurs de modèle
- Prototypes d'hôte, d'élément et de déclencheur
Reportez-vous aux recommandations officielles de Zabbix pour les recommandations générales concernant la définition des tags, ainsi qu'aux consignes spécifiques pour les modèles, éléments, déclencheurs et règles de découverte de bas niveau.
Les tags ont plusieurs usages, notamment pour marquer les événements. Lorsque des entités sont taguées, tout nouvel événement lié à une entité taguée héritera de ses tags. Par exemple :
- avec des modèles tagués - tout problème d'hôte (créé par des déclencheurs du modèle) héritera des tags du modèle ;
- avec des hôtes tagués - tout problème d'hôte héritera des tags de l'hôte ;
- avec des éléments/scénarios web tagués - tout problème d'élément/scénario web héritera des tags de l'élément/scénario web ;
- avec des déclencheurs tagués - tout problème créé par le déclencheur héritera des tags du déclencheur.
Un événement de problème hérite de tous les tags de l'ensemble de la chaîne d'entités - modèles, hôtes, éléments/scénarios web, déclencheurs.
Les combinaisons identiques tag:value (après résolution des macros) sont fusionnées en une seule, évitant ainsi les doublons.
Les tags d'événements personnalisés offrent davantage de flexibilité. Par exemple :
- la corrélation des événements peut être configurée en fonction des tags d'événements ;
- les conditions d'action peuvent être configurées en fonction des tags d'événements ;
- les problèmes d'éléments peuvent être regroupés en fonction des tags d'événements ;
- les tags de problème peuvent être utilisés pour associer les problèmes à des services.
Les entités peuvent être taguées avec le même nom de tag mais des valeurs de tag différentes (par exemple, component:memory et component:storage).
De même, une entité peut avoir un tag sans valeur et le même tag avec une valeur (par exemple, database et database:postgresql).
Ces tags ne sont pas considérés comme des doublons.
Cas d'utilisation
Voici quelques cas d'utilisation courants du marquage :
-
Marquer les événements de déclencheur :
- Définissez un tag de déclencheur (par exemple,
scope:performance). - Les problèmes créés par ce déclencheur auront le tag de déclencheur.
- Définissez un tag de déclencheur (par exemple,
-
Marquer les problèmes hérités du modèle :
- Définissez un tag de modèle (par exemple,
target:mysql). - Les problèmes créés par des déclencheurs issus de ce modèle auront le tag de modèle.
- Définissez un tag de modèle (par exemple,
-
Marquer les problèmes de l'hôte :
- Définissez un tag d'hôte (par exemple,
service:jira). - Les problèmes créés par des déclencheurs de cet hôte auront le tag d'hôte.
- Définissez un tag d'hôte (par exemple,
-
Filtrer les éléments associés :
- Définissez un tag d'élément (par exemple,
component:cpu). - Dans Monitoring → Latest data, les éléments peuvent être filtrés par le tag
component:cpu.
- Définissez un tag d'élément (par exemple,
-
Utiliser les informations extraites de la valeur de l'élément comme valeur du tag :
- Définissez un tag avec une macro comme valeur du tag (par exemple,
tag-name:{{ITEM.VALUE<N>}.regsub()}). - Dans Monitoring → Problems, les problèmes auront une valeur de tag résolue à partir des données extraites de la valeur de l'élément.
- Définissez un tag avec une macro comme valeur du tag (par exemple,
-
Identifier les problèmes dans un fichier journal et les fermer séparément :
- Définissez un tag de déclencheur pour le déclencheur de l'élément de surveillance des journaux qui extraira des valeurs de la valeur de l'élément à l'aide d'une macro (par exemple,
service:{{ITEM.VALUE<N>}.regsub()}). - Dans la configuration du déclencheur, configurez la corrélation d'événements :
- définissez le mode de génération des événements PROBLEM sur "Multiple" ;
- définissez OK event closes sur "All problems if tag values match" ;
- définissez le tag pour la correspondance.
- Les problèmes créés par le déclencheur de l'élément de journal auront le tag de déclencheur et seront fermés individuellement.
- Définissez un tag de déclencheur pour le déclencheur de l'élément de surveillance des journaux qui extraira des valeurs de la valeur de l'élément à l'aide d'une macro (par exemple,
-
Filtrer les notifications :
- Définissez des tags de déclencheur (par exemple,
scope:securitypour trigger1 etscope:availabilitypour trigger2). - Utilisez le filtrage par tag dans les conditions d'action pour recevoir des notifications uniquement sur les événements correspondant aux données du tag.
- Définissez des tags de déclencheur (par exemple,
-
Identifier les problèmes dans les notifications :
- Définissez des tags de déclencheur.
- Utilisez la macro {EVENT.TAGS} dans la notification de problème.
- La notification de problème contiendra les tags de déclencheur, ce qui facilitera l'identification de l'application ou du service auquel la notification appartient.
-
Simplifier les tâches de configuration en utilisant des tags de modèle :
- Définissez un tag de déclencheur de modèle.
- Les déclencheurs créés à partir de ce déclencheur de modèle auront son tag.
-
Créer des déclencheurs avec des tags issus de la découverte bas niveau (LLD) :
- Définissez un tag de prototype de déclencheur avec une macro LLD dans le nom ou la valeur du tag (par exemple,
scope:{#FSNAME}). - Les déclencheurs créés à partir du prototype de déclencheur auront son tag.
- Définissez un tag de prototype de déclencheur avec une macro LLD dans le nom ou la valeur du tag (par exemple,
-
Faire correspondre des services à l'aide de tags de service :
- Définissez des tags de service.
- Configurez des actions de service pour les services ayant des tags correspondants.
- Utilisez également les tags de service pour lier un service à un SLA pour les calculs de SLA.
-
Lier des services aux problèmes à l'aide de tags de problème de service :
- Définissez un tag de problème dans la configuration du service (par exemple,
target:mysql). - Les problèmes ayant un tag correspondant seront automatiquement corrélés au service, et l'état du service changera en fonction des règles de calcul de l'état du service configurées.
- Définissez un tag de problème dans la configuration du service (par exemple,
-
Masquer les problèmes lorsqu'un hôte est en mode maintenance :
- Définissez des tags dans la configuration de la période de maintenance.
- Les problèmes ayant les tags définis seront masqués.
-
Accorder l'accès à des groupes d'utilisateurs :
- Définissez des tags dans la configuration du groupe d'utilisateurs.
- Les utilisateurs du groupe d'utilisateurs pourront voir uniquement les problèmes ayant les tags définis.
Configuration
Les tags peuvent être définis dans un onglet dédié, par exemple, dans la configuration de déclencheur :

Prise en charge des macros
Les macros intégrées et les macros utilisateur dans les tags sont résolues au moment de l'événement. Tant que l'événement ne s'est pas produit, ces macros seront affichées dans l'interface Zabbix sans être résolues.
Les macros de découverte de bas niveau sont résolues pendant le processus de découverte.
Les macros suivantes peuvent être utilisées dans les noms et valeurs des tags de déclencheur :
- {ITEM.VALUE}, {ITEM.LASTVALUE}, {HOST.HOST}, {HOST.NAME}, {HOST.CONN}, {HOST.DNS}, {HOST.IP}, {HOST.PORT} et {HOST.ID} macros intégrées
- {INVENTORY.*} macros intégrées (pour référencer les valeurs d'inventaire de hôte à partir d'un ou de plusieurs hôtes dans une expression de déclencheur)
- Macros utilisateur et macros utilisateur avec contexte (le contexte peut inclure des macros de découverte de bas niveau)
- Macros de découverte de bas niveau (uniquement dans les tags de prototype de déclencheur)
Les macros suivantes peuvent être utilisées dans les noms et valeurs des tags de modèle, de hôte et de scénario web/élément :
- {HOST.HOST}, {HOST.NAME}, {HOST.CONN}, {HOST.DNS}, {HOST.IP}, {HOST.PORT} et {HOST.ID} macros intégrées
- {INVENTORY.*} macros intégrées
- Macros utilisateur
- Macros de découverte de bas niveau (uniquement dans les tags de prototype de hôte et d'élément)
Les macros suivantes peuvent être utilisées dans les notifications basées sur des déclencheurs :
- {EVENT.TAGS} et {EVENT.RECOVERY.TAGS} macros intégrées (ces macros seront résolues en une liste de tags d'événement ou de tags d'événement de récupération séparés par des virgules)
- {EVENT.TAGSJSON} et {EVENT.RECOVERY.TAGSJSON} macros intégrées (ces macros seront résolues en un tableau JSON contenant des objets de tag d'événement objects ou des objets de tag d'événement de récupération)
Extraction de sous-chaîne dans les tags de déclencheur
L'extraction de sous-chaîne est prise en charge pour renseigner le nom du tag ou la valeur du tag, à l'aide d'une fonction de macro. La fonction applique une expression régulière à la valeur obtenue par la macro prise en charge. Par exemple :
{{ITEM.VALUE}.regsub(pattern, output)}
{{ITEM.VALUE}.iregsub(pattern, output)}
{{#LLDMACRO}.regsub(pattern, output)}
{{#LLDMACRO}.iregsub(pattern, output)}
Si le nom ou la valeur du tag dépasse 255 caractères après la résolution de la macro, il sera tronqué à 255 caractères.
Voir aussi : Utilisation des fonctions de macro dans les macros de découverte bas niveau pour le marquage des événements.
Affichage des tags d'événement
Les tags, s'ils sont définis, peuvent être consultés avec les nouveaux événements dans :
- Monitoring → Problems
- Monitoring → Problems → Event details
- Dashboards → Problems widget
L'ordre et le nombre de tags affichés sont déterminés par les options de filtrage Tag display priority et Show tags dans Monitoring → Problems ou dans le widget de tableau de bord Problems. Notez qu'un maximum de trois tags peut être affiché ; s'il y a davantage de tags, le survol des trois points affiche tous les tags dans une fenêtre contextuelle.
