Marcação
Tags têm múltiplas finalidades, principalmente para marcar events. Quando entidades são marcadas com tags, qualquer novo evento relacionado a uma entidade com tag herdará suas tags. Por exemplo:
- com templates com tags - qualquer problema de host (criado por triggers do template) herdará as tags do template.
- com hosts com tags - qualquer problema de host herdará as tags do host.
- com items/scenarios web com tags - qualquer problema de item/scenario web herdará as tags do item/scenario web.
- com triggers com tags - qualquer problema criado pelo trigger herdará as tags do trigger.
Um evento de problema herda todas as tags de toda a cadeia de entidades - templates, hosts, items/scenarios web, triggers.
Combinações idênticas de tag:value (após a resolução de macros) são mescladas em uma só, evitando assim duplicação.
Eventos de recuperação gerados por um manual close também incluem as tags de evento resolvidas herdadas de templates, hosts, items/scenarios web e triggers.
Essas tags estão disponíveis em notificações e por meio de macros como {EVENT.RECOVERY.TAGS} e {EVENT.RECOVERY.TAGSJSON}.
Tags de evento personalizadas oferecem mais flexibilidade. Por exemplo:
- event correlation pode ser configurada com base em tags de evento.
- action conditions podem ser configuradas com base em tags de evento.
- problemas de item podem ser agrupados com base em tags de evento.
- tags de problema podem ser usadas para mapear problemas para services.
As entidades podem ser marcadas com o mesmo nome de tag, mas com valores de tag diferentes (por exemplo, component:memory e component:storage).
Da mesma forma, uma entidade pode ter uma tag sem valor e a mesma tag com um valor (por exemplo, database e database:postgresql).
Essas tags não são consideradas duplicadas.
Tags consistem em um nome de tag e um valor de tag.
Ao marcar entidades, você pode usar apenas o nome ou combiná-lo com um valor (por exemplo, mysql, jira, target:mysql, service:jira, etc.).
Tags podem ser definidas para várias entidades:
- Templates
- Hosts
- Items
- Web scenarios
- Triggers
- Services
- Template items and triggers
- Host, item, and trigger prototypes
Nas listas Templates, Hosts, Items, Triggers, Web scenarios e em seus protótipos, a coluna Tags exibe tanto as tags regulares quanto as herdadas. Ao passar o mouse sobre uma tag herdada ou clicar nela, aparece uma dica de ferramenta JavaScript com o texto "Inherited tag". Se uma tag herdada também existir como tag regular, um texto diferente de dica de ferramenta é exibido dependendo da lista em que ela aparece (por exemplo, "Inherited and template tag" na lista de templates ou "Inherited and host tag" na lista de hosts). Em outros locais do frontend, as tags regulares e herdadas são exibidas juntas (as duplicatas são removidas), sem ícones e sem texto adicional de dica de ferramenta.
Consulte as diretrizes oficiais do Zabbix para recomendações gerais sobre a definição de tags, juntamente com orientações específicas para templates, items, triggers e regras de descoberta em baixo nível.
Casos de uso
Alguns casos de uso comuns para marcação são os seguintes:
-
Marcar eventos de trigger:
- Defina uma tag de trigger (por exemplo,
scope:performance). - Os problemas criados por esse trigger terão a tag de trigger.
- Defina uma tag de trigger (por exemplo,
-
Marcar problemas herdados de template:
- Defina uma tag de template (por exemplo,
target:mysql). - Os problemas criados por triggers desse template terão a tag de template.
- Defina uma tag de template (por exemplo,
-
Marcar problemas de host:
- Defina uma tag de host (por exemplo,
service:jira). - Os problemas criados por triggers desse host terão a tag de host.
- Defina uma tag de host (por exemplo,
-
Filtrar items relacionados:
- Defina uma tag de item (por exemplo,
component:cpu). - Em Monitoring > Latest data, os items podem ser filtrados pela tag
component:cpu.
- Defina uma tag de item (por exemplo,
-
Usar informações extraídas do valor do item como valor da tag:
- Defina uma tag com uma macro como valor da tag (por exemplo,
tag-name:{{ITEM.VALUE<N>}.regsub()}). - Em Monitoring > Problems, os problemas terão o valor da tag resolvido para os dados extraídos do valor do item.
- Defina uma tag com uma macro como valor da tag (por exemplo,
-
Identificar problemas em um arquivo de log e fechá-los separadamente:
- Defina uma tag de trigger para o item de monitoramento de log que extrairá valores do valor do item usando uma macro (por exemplo,
service:{{ITEM.VALUE<N>}.regsub()}). - Na configuração do trigger, configure a correlação de eventos:
- defina o modo de geração de eventos PROBLEM event generation mode como "Multiple";
- defina OK event closes como "All problems if tag values match";
- defina a tag para correspondência.
- Os problemas criados pelo trigger do item de log terão a tag de trigger e serão fechados individualmente.
- Defina uma tag de trigger para o item de monitoramento de log que extrairá valores do valor do item usando uma macro (por exemplo,
-
Filtrar notificações:
- Defina tags de trigger (por exemplo,
scope:securitypara trigger1 escope:availabilitypara trigger2). - Use filtragem por tag nas action conditions para receber notificações apenas nos eventos que correspondem aos dados da tag.
- Defina tags de trigger (por exemplo,
-
Identificar problemas nas notificações:
- Defina tags de trigger.
- Use a macro {EVENT.TAGS} na notificação de problema.
- A notificação de problema conterá as tags de trigger, facilitando a identificação de qual aplicação/serviço a notificação pertence.
-
Simplificar tarefas de configuração usando tags de template:
- Defina uma tag de trigger de template.
- Os triggers criados a partir desse trigger de template terão sua tag.
-
Criar triggers com tags a partir de low-level discovery (LLD):
- Defina uma tag de protótipo de trigger com uma macro LLD no nome ou valor da tag (por exemplo,
scope:{#FSNAME}). - Os triggers criados a partir do protótipo de trigger terão sua tag.
- Defina uma tag de protótipo de trigger com uma macro LLD no nome ou valor da tag (por exemplo,
-
Correspondência de serviços usando tags de serviço:
- Defina service tags.
- Configure service actions para serviços com tags correspondentes.
- Além disso, use tags de serviço para vincular um serviço a um SLA para cálculos de SLA.
-
Vincular serviços a problemas usando tags de problema de serviço:
- Defina uma problem tag na configuração do serviço (por exemplo,
target:mysql). - Problemas com uma tag correspondente serão correlacionados automaticamente ao serviço, e o status do serviço mudará com base nas regras configuradas de cálculo do status do serviço.
- Defina uma problem tag na configuração do serviço (por exemplo,
-
Suprimir problemas quando um host estiver em modo de manutenção:
- Defina tags na configuração do período de manutenção.
- Problemas com as tags definidas serão suprimidos.
-
Conceder acesso a grupos de usuários:
- Defina tags na configuração de grupo de usuários.
- Os usuários no grupo de usuários poderão visualizar apenas os problemas com as tags definidas.
Configuração
As tags podem ser definidas em uma aba dedicada, por exemplo, em configuração de trigger:

Suporte a macros
Built-in e user macros em tags são resolvidas no momento do evento. Até que o evento ocorra, essas macros serão exibidas no frontend do Zabbix como não resolvidas.
Low-level discovery macros são resolvidas durante o processo de descoberta.
As seguintes macros podem ser usadas em nomes e valores de tags de trigger:
- macros built-in {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}, {HOST.HOST}, {HOST.NAME}, {HOST.CONN}, {HOST.DNS}, {HOST.IP}, {HOST.PORT} e {HOST.ID}
- macros built-in {INVENTORY.*} (para referenciar valores de inventário do host de um ou vários hosts em uma expressão de trigger)
- user macros e user macros com contexto (o contexto pode incluir low-level discovery macros)
- low-level discovery macros (somente em tags de prototype de trigger)
As seguintes macros podem ser usadas em nomes e valores de tags de template, host e item/web scenario:
- macros built-in {HOST.HOST}, {HOST.NAME}, {HOST.CONN}, {HOST.DNS}, {HOST.IP}, {HOST.PORT} e {HOST.ID}
- macros built-in {INVENTORY.*}
- user macros
- low-level discovery macros (somente em tags de prototype de host e item)
As seguintes macros podem ser usadas em notificações baseadas em trigger:
- macros built-in {EVENT.TAGS} e {EVENT.RECOVERY.TAGS} (essas macros serão resolvidas para uma lista separada por vírgulas de tags de evento ou tags de evento de recuperação)
- macros built-in {EVENT.TAGSJSON} e {EVENT.RECOVERY.TAGSJSON} (essas macros serão resolvidas para uma matriz JSON contendo objetos de tag de evento objects ou objetos de tag de evento de recuperação)
Extração de substring em tags de trigger
A extração de substring é suportada para preencher o nome da tag ou o valor da tag, usando uma função de macro. A função aplica uma expressão regular ao valor obtido pela macro suportada. Por exemplo:
{{ITEM.VALUE}.regsub(pattern, output)}
{{ITEM.VALUE}.iregsub(pattern, output)}
{{#LLDMACRO}.regsub(pattern, output)}
{{#LLDMACRO}.iregsub(pattern, output)}
Se o nome ou o valor da tag exceder 255 caracteres após a resolução da macro, ele será truncado para 255 caracteres.
Veja também: Uso de funções de macro em macros de descoberta em baixo nível para marcação de eventos.
Visualizando tags de eventos
As tags, se definidas, podem ser visualizadas com novos eventos em:
- Monitoring > Problems
- Monitoring > Problems > Event details
- Dashboards > Problems widget
A ordem e o número de tags exibidas são determinados pelas opções de filtragem Tag display priority e Show tags em Monitoring > Problems ou no widget Problems do dashboard. Observe que no máximo três tags podem ser exibidas; se houver mais tags, ao passar o mouse sobre os três pontos todas as tags serão exibidas em uma janela pop-up.
