O Zabbix suporta uma série de macros internas que podem ser usadas em várias situações. Essas macros são variáveis, identificadas por uma sintaxe específica:
As macros são resolvidas para um valor específico dependendo do contexto.
O uso eficaz de macros permite economizar tempo e tornar a configuração do Zabbix mais transparente.
Em um dos usos típicos, uma macro pode ser usada em um template. Assim, um trigger em um template pode ser nomeado como "Processor load is too high on {HOST.NAME}". Quando o template é aplicado ao host, como o Zabbix server, o nome será resolvido para "Processor load is too high on Zabbix server" quando o trigger for exibido na seção Monitoramento.
As macros podem ser usadas nos parâmetros da chave do item. Uma macro pode ser usada apenas em parte do parâmetro, por exemplo, item.key[server_{HOST.HOST}_local]. Não é necessário colocar o parâmetro entre aspas duplas, pois o Zabbix cuidará de quaisquer símbolos especiais ambíguos, se presentes na macro resolvida.
Existem outros tipos de macros no Zabbix.
O Zabbix suporta as seguintes macros:
{MACRO} - macro interna (veja a lista completa){<macro>.<func>(<params>)} - funções de macro{$MACRO} - macro definida pelo usuário, opcionalmente com contexto{#MACRO} - macro para descoberta de baixo nível{?EXPRESSION} - macro de expressão