2 Configuration d’un déclencheur
Cette page décrit comment configurer un déclencheur dans l’interface web de Zabbix.
Notez que les modèles Zabbix officiels contiennent des déclencheurs prédéfinis. Consultez le guide pour surveiller Linux en appliquant un modèle. Il est également possible de mettre à jour en masse les déclencheurs configurés.
Autres ressources :
- Détection des problèmes avec les déclencheurs (introduction générale)
- Exemples de déclencheurs (par cas d’utilisation)
- Expression de déclencheur (détails de la syntaxe)
- Bonnes pratiques
Configuration
Pour configurer un déclencheur, procédez comme suit :
- Accédez à : Collecte de données > Hôtes
- Cliquez sur Déclencheurs dans la ligne de l'hôte
- Cliquez sur Créer un déclencheur à droite (ou sur le nom du déclencheur pour modifier un déclencheur existant)
- Saisissez les paramètres du déclencheur dans le formulaire
L'onglet Trigger contient tous les attributs essentiels du déclencheur.

Tous les champs obligatoires sont marqués d'un astérisque rouge.
| Parameter | Description |
|---|---|
| Name | Nom du déclencheur. Les macros prises en charge sont : {HOST.HOST}, {HOST.NAME}, {HOST.PORT}, {HOST.CONN}, {HOST.DNS}, {HOST.IP}, {ITEM.VALUE}, {ITEM.VALUE.AGE}, {ITEM.VALUE.DATE}, {ITEM.VALUE.TIME}, {ITEM.VALUE.TIMESTAMP}, {ITEM.LASTVALUE}, {ITEM.LASTVALUE.AGE}, {ITEM.LASTVALUE.DATE}, {ITEM.LASTVALUE.TIME}, {ITEM.LASTVALUE.TIMESTAMP}, {ITEM.LOG.*}, et les macros utilisateur {$MACRO}. Les macros $1, $2...$9 peuvent être utilisées pour faire référence à la première, deuxième... neuvième constante de l'expression. Note : les macros $1-$9 seront résolues correctement si elles font référence à des constantes dans des expressions relativement simples et directes. Par exemple, le nom "Processor load above $1 on {HOST.NAME}" sera automatiquement remplacé par "Processor load above 5 on New host" si l'expression est last(/New host/system.cpu.load[percpu,avg1])>5. |
| Event name | Lorsqu'il est défini, ce nom sera utilisé pour créer le nom de l'événement de problème. Par défaut, le nom de l'événement est identique au nom du déclencheur. Le nom de l'événement peut être utilisé pour créer des alertes pertinentes contenant des données de problème (voir exemple). Le même ensemble de macros est pris en charge que dans le nom du déclencheur, ainsi que les macros d'expression {TIME}, {TIMESTAMP} et {?EXPRESSION}. |
| Operational data | Les données opérationnelles permettent de définir des chaînes arbitraires avec des macros. Les macros seront résolues dynamiquement en données en temps réel dans Surveillance > Problèmes. Alors que les macros du nom du déclencheur (voir ci-dessus) seront résolues selon leurs valeurs au moment où un problème survient et serviront de base à un nom de problème statique, les macros des données opérationnelles conservent la capacité d'afficher dynamiquement les informations les plus récentes. Si aucune donnée opérationnelle n'est configurée au niveau du déclencheur, les dernières valeurs de tous les éléments de l'expression seront affichées. Le même ensemble de macros est pris en charge que dans le nom du déclencheur. |
| Severity | Définissez la gravité requise du déclencheur en cliquant sur les boutons. |
| Expression | Expression logique utilisée pour définir les conditions d'un problème. Les suffixes de temps et les suffixes de taille de mémoire sont pris en charge. Un problème est créé une fois que toutes les conditions incluses dans l'expression sont remplies, c'est-à-dire lorsque l'expression est évaluée à TRUE. Le problème sera résolu dès que l'expression sera évaluée à FALSE, sauf si des conditions de rétablissement supplémentaires sont spécifiées dans Recovery expression. |
| OK event generation | Options de génération des événements OK : Expression - les événements OK sont générés sur la base de la même expression que les événements de problème ; Recovery expression - les événements OK sont générés si l'expression de problème est évaluée à FALSE et que l'expression de rétablissement est évaluée à TRUE ; None - dans ce cas, le déclencheur ne reviendra jamais de lui-même à l'état OK. |
| Recovery expression | Expression logique (facultative) définissant des conditions supplémentaires qui doivent être remplies avant que le problème ne soit résolu, après que l'expression de problème initiale a déjà été évaluée à FALSE. L'expression de rétablissement est utile pour l'hystérésis du déclencheur. Il n'est pas possible de résoudre un problème uniquement par l'expression de rétablissement si l'expression de problème est toujours TRUE. Ce champ n'est disponible que si 'Recovery expression' est sélectionné pour OK event generation. |
| PROBLEM event generation mode | Mode de génération des événements de problème : Single - un seul événement est généré lorsqu'un déclencheur passe pour la première fois à l'état 'Problem' ; Multiple - un événement est généré à chaque évaluation 'Problem' du déclencheur. |
| OK event closes | Sélectionnez si l'événement OK ferme : All problems - tous les problèmes de ce déclencheur ; All problems if tag values match - uniquement les problèmes de déclencheur dont les valeurs de balise d'événement correspondent. |
| Tag for matching | Saisissez le nom de la balise d'événement à utiliser pour la corrélation des événements. Ce champ est affiché si 'All problems if tag values match' est sélectionné pour la propriété OK event closes et est obligatoire dans ce cas. |
| Allow manual close | Cochez cette case pour autoriser la fermeture manuelle des événements de problème générés par ce déclencheur. La fermeture manuelle est possible lors de l'acquittement des événements de problème. |
| Menu entry name | Si ce champ n'est pas vide, le nom saisi ici (jusqu'à 64 caractères) est utilisé dans plusieurs emplacements de l'interface comme libellé pour l'URL du déclencheur spécifiée dans le paramètre Menu entry URL. S'il est vide, le nom par défaut Trigger URL est utilisé. Le même ensemble de macros est pris en charge que dans le nom du déclencheur, ainsi que {EVENT.ID}, {HOST.ID} et {TRIGGER.ID}. |
| Menu entry URL | Si ce champ n'est pas vide, l'URL saisie ici (jusqu'à 2048 caractères) est disponible sous forme de lien dans le menu d'événement dans plusieurs emplacements de l'interface, par exemple lors d'un clic sur le nom du problème dans Surveillance > Problèmes ou dans le widget de tableau de bord Problèmes. Le même ensemble de macros est pris en charge que dans le nom du déclencheur, ainsi que {EVENT.ID}, {HOST.ID} et {TRIGGER.ID}. Remarque : les macros utilisateur avec des valeurs secrètes ne seront pas résolues dans l'URL. |
| Description | Champ texte utilisé pour fournir davantage d'informations sur ce déclencheur. Peut contenir des instructions pour corriger un problème spécifique, les coordonnées de la personne responsable, etc. Le même ensemble de macros est pris en charge que dans le nom du déclencheur. |
| Enabled | Décochez cette case pour désactiver le déclencheur si nécessaire. Les problèmes d'un déclencheur désactivé ne sont plus affichés dans l'interface, mais ne sont pas supprimés. |
L'onglet Tags vous permet de définir des balises au niveau du déclencheur. Tous les problèmes de ce déclencheur seront balisés avec les valeurs saisies ici.

En outre, l'option Inherited and trigger tags vous permet d'afficher les balises définies au niveau du modèle si le déclencheur provient de ce modèle. S'il existe plusieurs modèles avec la même balise, ces balises sont affichées une seule fois et les noms des modèles sont séparés par des virgules. Un déclencheur n'"hérite" pas et n'affiche pas les balises au niveau de l'hôte.
| Parameter | Description |
|---|---|
| Name/Value | Définissez des balises personnalisées pour marquer les événements de déclencheur. Les balises sont une paire composée d'un nom de balise et d'une valeur. Vous pouvez utiliser uniquement le nom ou l'associer à une valeur. Un déclencheur peut avoir plusieurs balises portant le même nom, mais avec des valeurs différentes. Les macros utilisateur, les macros utilisateur avec contexte, les macros de découverte de bas niveau et les fonctions de macro functions avec {{ITEM.VALUE}}, {{ITEM.LASTVALUE}} sont prises en charge dans les balises d'événement. Les macros de découverte de bas niveau peuvent être utilisées à l'intérieur du contexte de macro.La macro {TRIGGER.ID} est prise en charge dans les valeurs de balise de déclencheur. Elle peut être utile pour identifier les déclencheurs créés à partir de prototypes de déclencheur et, par exemple, pour supprimer les problèmes de ces déclencheurs pendant la maintenance. Si la longueur totale de la valeur développée dépasse 255, elle sera tronquée à 255 caractères. Voir toutes les macros prises en charge pour les balises d'événement. Les balises d'événement peuvent être utilisées pour la corrélation des événements, dans les conditions d'action et seront également visibles dans Surveillance > Problèmes ou dans le widget Problèmes. |
L'onglet Dependencies contient toutes les dépendances du déclencheur.
Cliquez sur Add pour ajouter une nouvelle dépendance.
Vous pouvez également configurer un déclencheur en en ouvrant un existant, en cliquant sur le bouton Clone, puis en l'enregistrant sous un nom différent.
Test d'expression de déclencheur
Il est possible de tester quel serait le résultat de l'expression en fonction de la valeur reçue.
L'expression suivante, issue d'un modèle officiel, est prise comme exemple :
avg(/Cisco IOS SNMPv2/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)>{$TEMP_WARN}
or
last(/Cisco IOS SNMPv2/sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}])={$TEMP_WARN_STATUS}
Pour tester l'expression, cliquez sur Constructeur d'expression sous le champ d'expression.

Dans le Constructeur d'expression, toutes les expressions individuelles sont listées. Pour ouvrir la fenêtre de test, cliquez sur Test sous la liste des expressions.

Dans la fenêtre de test, vous pouvez saisir des valeurs d'exemple ('80', '70', '0', '1' dans cet exemple), puis voir le résultat de l'expression en cliquant sur le bouton Test.

Le résultat des expressions individuelles ainsi que de l'expression complète peut être consulté.
"TRUE" signifie que l'expression spécifiée est correcte. Dans ce cas A, "80" est supérieur à la valeur spécifiée {$TEMP_WARN}, "70" dans cet exemple. Comme prévu, un résultat "TRUE" apparaît.
"FALSE" signifie que l'expression spécifiée est incorrecte. Dans ce cas B, {$TEMP_WARN_STATUS} "1" doit être égal à la valeur spécifiée, "0" dans cet exemple. Comme prévu, un résultat "FALSE" apparaît.
Le type d'expression choisi est "OR". Si au moins une des conditions spécifiées (A ou B dans ce cas) est TRUE, le résultat global sera également TRUE. Cela signifie que la valeur actuelle dépasse la valeur d'avertissement et qu'un problème s'est produit.