Você está visualizando a documentação da versão de desenvolvimento, que pode estar incompleta.
Esta página foi traduzida automaticamente. Se você notar um erro, selecione-o e pressione Ctrl+Enter para reportá-lo aos editores.

6 Tagging

Visão geral

As 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.).

As tags podem ser definidas para várias entidades:

  • Templates
  • Hosts
  • Items
  • Cenários web
  • Triggers
  • Serviços
  • Items e triggers de template
  • Protótipos de host, item e trigger

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 de baixo nível.

As tags têm vários propósitos, principalmente marcar eventos. Quando as entidades são marcadas, qualquer novo evento relacionado a uma entidade marcada herdará suas tags. Por exemplo:

  • com templates marcados - qualquer problema de host (criado por triggers do template) herdará as tags do template;
  • com hosts marcados - qualquer problema de host herdará as tags do host;
  • com items/cenários web marcados - qualquer problema de item/cenário web herdará as tags do item/cenário web;
  • com triggers marcados - 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/cenários web, triggers. Combinações idênticas de tag:valor (após macros resolvidas) são mescladas em uma só, evitando assim duplicação.

Eventos de recuperação gerados por um fechamento manual também incluem as tags de evento resolvidas herdadas de templates, hosts, items/cenários 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:

  • correlação de eventos pode ser configurada com base em tags de evento;
  • condições de ação 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 serviços.

As entidades podem ser marcadas com o mesmo nome de tag, mas 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 valor (por exemplo, database e database:postgresql). Essas tags não são consideradas duplicadas.

Casos de uso

Alguns casos de uso comuns para marcação são os seguintes:

  1. Marcar eventos de trigger:
    • Defina uma tag de trigger (por exemplo, scope:performance).
    • Os problemas criados por esta trigger terão a tag da trigger.
  2. Marcar problemas herdados do template:
    • Defina uma tag de template (por exemplo, target:mysql).
    • Os problemas criados por triggers deste template terão a tag do template.
  3. Marcar problemas do host:
    • Defina uma tag de host (por exemplo, service:jira).
    • Os problemas criados por triggers deste host terão a tag do host.
  4. Filtrar itens relacionados:
    • Defina uma tag de item (por exemplo, component:cpu).
    • Em Monitoramento > Últimos dados, os itens podem ser filtrados pela tag component:cpu.
  5. 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 Monitoramento > Problemas, os problemas terão o valor da tag resolvido para os dados extraídos do valor do item.
  6. Identificar problemas em um arquivo de log e fechá-los separadamente:
    • Defina uma tag de trigger para a trigger do item de monitoramento de log que irá extrair valores do valor do item usando uma macro (por exemplo, service:{{ITEM.VALUE<N>}.regsub()} ).
    • Na configuração da trigger, configure a correlação de eventos:
      • defina o Modo de geração de evento PROBLEM como "Múltiplos";
      • defina Evento OK fecha como "Todos os problemas se os valores das tags corresponderem";
      • defina a tag para correspondência.
    • Os problemas criados pela trigger do item de log terão a tag da trigger e serão fechados individualmente.
  7. Filtrar notificações:
    • Defina tags de trigger (por exemplo, scope:security para trigger1 e scope:availability para trigger2).
    • Use o filtro de tags nas condições de ação para receber notificações apenas nos eventos que correspondam aos dados da tag.
  8. 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 da trigger, facilitando a identificação de qual aplicação/serviço a notificação pertence.
  9. Simplificar tarefas de configuração usando tags de template:
    • Defina uma tag de trigger de template.
    • Triggers criadas a partir desta trigger de template terão sua tag.
  10. Criar triggers com tags a partir de descoberta de baixo nível (LLD):
    • Defina uma tag de protótipo de trigger com uma macro LLD no nome ou valor da tag (por exemplo, scope:{#FSNAME}).
    • Triggers criadas a partir do protótipo de trigger terão sua tag.
  11. Corresponder serviços usando tags de serviço:
  12. Vincular serviços a problemas usando tags de problema de serviço:
    • Defina uma tag de problema na configuração do serviço (por exemplo, target:mysql).
    • Problemas com uma tag correspondente serão automaticamente correlacionados ao serviço, e o status do serviço mudará com base nas regras de cálculo de status do serviço configuradas.
  13. Suprimir problemas quando um host estiver em modo de manutenção:
  14. Conceder acesso a grupos de usuários:

Configuração

As tags podem ser definidas em uma guia dedicada, por exemplo, na configuração do trigger:

Suporte a macros

Macros internas e macros de usuário em tags são resolvidas no momento do evento. Até que o evento ocorra, essas macros serão exibidas não resolvidas no frontend do Zabbix.

Macros de descoberta de baixo nível são resolvidas durante o processo de descoberta.

As seguintes macros podem ser usadas em nomes e valores de tags de trigger:

  • {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 internas
  • {INVENTORY.*} macros internas (para referenciar valores de inventário de host de um ou vários hosts em uma expressão de trigger)
  • Macros de usuário e macros de usuário com contexto (o contexto pode incluir macros de descoberta de baixo nível)
  • Macros de descoberta de baixo nível (apenas em tags de protótipo de trigger)

As seguintes macros podem ser usadas em nomes e valores de tags de template, host e item/cenário web:

  • {HOST.HOST}, {HOST.NAME}, {HOST.CONN}, {HOST.DNS}, {HOST.IP}, {HOST.PORT} e {HOST.ID} macros internas
  • {INVENTORY.*} macros internas
  • Macros de usuário
  • Macros de descoberta de baixo nível (apenas em tags de protótipo de host e item)

As seguintes macros podem ser usadas em notificações baseadas em trigger:

  • {EVENT.TAGS} e {EVENT.RECOVERY.TAGS} macros internas (essas macros serão resolvidas para uma lista separada por vírgulas de tags de evento ou tags de evento de recuperação)
  • {EVENT.TAGSJSON} e {EVENT.RECOVERY.TAGSJSON} macros internas (essas macros serão resolvidas para um array JSON contendo objetos de tag de evento 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 ou valor da tag, usando uma macro função. 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 valor da tag exceder 255 caracteres após a resolução da macro, ele será truncado para 255 caracteres.

Veja também: Usando funções de macro em macros de descoberta de baixo nível para marcação de eventos.

Visualizando tags de eventos

As tags, se definidas, podem ser visualizadas com novos eventos em:

A ordem e o número de tags exibidas são determinados pelas opções de filtragem Prioridade de exibição da tag e Exibir tags em Monitoramento > Problemas ou no widget de problemas 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.