Zabbix prend en charge un certain nombre de macros intégrées qui peuvent être utilisées dans diverses situations. Ces macros sont des variables, identifiées par une syntaxe spécifique :
Les macros se résolvent en une valeur spécifique en fonction du contexte.
L'utilisation efficace des macros permet de gagner du temps et de rendre la configuration de Zabbix plus transparente.
Dans l'une des utilisations typiques, une macro peut être utilisée dans un modèle. Ainsi, un déclencheur sur un modèle peut être nommé "La charge du processeur est trop élevée sur {HOST.NAME}". Lorsque le modèle est appliqué à l'hôte, tel que le serveur Zabbix, le nom se résoudra en "La charge du processeur est trop élevée sur le serveur Zabbix" lorsque le déclencheur s'affiche dans la section Surveillance.
Des macros peuvent être utilisées dans les paramètres clés de l'élément. Une macro peut être utilisée pour une partie seulement du paramètre, par exemple item.key[server_{HOST.HOST}_local]
. Il n'est pas nécessaire de mettre le paramètre entre guillemets doubles car Zabbix prendra soin de tous les symboles spéciaux ambigus, s'ils sont présents dans la macro résolue.
Il existe d'autres types de macros dans Zabbix.
Zabbix prend en charge les macros suivantes :
{MACRO}
- macro intégrée (voir liste complète){<macro>.<func>(<params>)}
- fonctions de macro{$MACRO}
- macro définie par l'utilisateur, éventuellement avec contexte{#MACRO}
- macro pour découverte de bas niveau{?EXPRESSION}
- macro d'expression