1 Configurando um trigger
Visão geral
Para configurar um trigger, faça o seguinte:
- Vá para: Data collection > Hosts
- Clique em Triggers na linha do host
- Clique em Create trigger à direita (ou no nome do trigger para editar um trigger existente)
- Insira os parâmetros do trigger no formulário
Veja também informações gerais sobre triggers e seus tempos de cálculo.
Configuração
A aba Trigger contém todos os atributos essenciais do trigger.

Todos os campos de entrada obrigatórios são marcados com um asterisco vermelho.
| Parameter | Description |
|---|---|
| Name | Nome do trigger. As macros suportadas são: {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.*} e macros de usuário {$MACRO}. As macros $1, $2...$9 podem ser usadas para referenciar a primeira, segunda...nona constante da expressão. Nota: as macros $1-$9 serão resolvidas corretamente se fizerem referência a constantes em expressões relativamente simples e diretas. Por exemplo, o nome "Processor load above $1 on {HOST.NAME}" será alterado automaticamente para "Processor load above 5 on New host" se a expressão for last(/New host/system.cpu.load[percpu,avg1])>5. |
| Event name | Quando definido, este nome será usado para criar o nome do evento de problema. Por padrão, o nome do evento é o mesmo que o nome do trigger. O nome do evento pode ser usado para criar alertas significativos contendo dados do problema (veja o exemplo). O mesmo conjunto de macros é suportado como no nome do trigger, além das macros de expressão {TIME}, {TIMESTAMP} e {?EXPRESSION}. |
| Operational data | Os dados operacionais permitem definir strings arbitrárias junto com macros. As macros serão resolvidas dinamicamente para dados em tempo real em Monitoring > Problems. Enquanto as macros no nome do trigger (veja acima) serão resolvidas com seus valores no momento em que um problema ocorrer e se tornarão a base de um nome de problema estático, as macros nos dados operacionais mantêm a capacidade de exibir dinamicamente as informações mais recentes. Se nenhum dado operacional estiver configurado no nível do trigger, os valores mais recentes de todos os items da expressão serão exibidos. O mesmo conjunto de macros é suportado como no nome do trigger. |
| Severity | Defina a severity do trigger necessária clicando nos botões. |
| Expression | Expressão lógica usada para definir as condições de um problema. Sufixos de tempo e sufixos de tamanho de memória são suportados. Um problema é criado depois que todas as condições incluídas na expressão são atendidas, ou seja, a expressão é avaliada como TRUE. O problema será resolvido assim que a expressão for avaliada como FALSE, a menos que condições adicionais de recuperação sejam especificadas em Recovery expression. |
| OK event generation | Opções de geração de evento OK: Expression - eventos OK são gerados com base na mesma expressão dos eventos de problema; Recovery expression - eventos OK são gerados se a expressão do problema for avaliada como FALSE e a expressão de recuperação for avaliada como TRUE; None - neste caso, o trigger nunca retornará ao estado OK por conta própria. |
| Recovery expression | Expressão lógica opcional que define condições adicionais que precisam ser atendidas antes que o problema seja resolvido, depois que a expressão original do problema já tiver sido avaliada como FALSE. A expressão de recuperação é útil para histerese de trigger. Não é possível resolver um problema apenas pela expressão de recuperação se a expressão do problema ainda for TRUE. Este campo só está disponível se 'Recovery expression' estiver selecionado para OK event generation. |
| PROBLEM event generation mode | Modo de geração de eventos de problema: Single - um único evento é gerado quando um trigger entra no estado 'Problem' pela primeira vez; Multiple - um evento é gerado em cada avaliação 'Problem' do trigger. |
| OK event closes | Selecione se o evento OK fecha: All problems - todos os problemas deste trigger; All problems if tag values match - apenas os problemas do trigger com valores de tag de evento correspondentes. |
| Tag for matching | Digite o nome da tag do evento a ser usado para correlação de eventos. Este campo é exibido se 'All problems if tag values match' estiver selecionado para a propriedade OK event closes e é obrigatório nesse caso. |
| Allow manual close | Marque para permitir o fechamento manual dos eventos de problema gerados por este trigger. O fechamento manual é possível ao reconhecer eventos de problema. |
| Menu entry name | Se não estiver vazio, o nome inserido aqui (até 64 caracteres) é usado em vários locais do frontend como rótulo para a URL do trigger especificada no parâmetro Menu entry URL. Se estiver vazio, o nome padrão Trigger URL é usado. O mesmo conjunto de macros é suportado como no nome do trigger, além de {EVENT.ID}, {HOST.ID} e {TRIGGER.ID}. |
| Menu entry URL | Se não estiver vazio, a URL inserida aqui (até 2048 caracteres) fica disponível como um link no menu de eventos em vários locais do frontend, por exemplo, ao clicar no nome do problema em Monitoring > Problems ou no widget do painel Problems. O mesmo conjunto de macros é suportado como no nome do trigger, além de {EVENT.ID}, {HOST.ID} e {TRIGGER.ID}. Observação: macros de usuário com valores secretos não serão resolvidas na URL. |
| Description | Campo de texto usado para fornecer mais informações sobre este trigger. Pode conter instruções para corrigir um problema específico, detalhes de contato da equipe responsável etc. O mesmo conjunto de macros é suportado como no nome do trigger. |
| Enabled | Desmarcar esta caixa desativará o trigger, se necessário. Os problemas de um trigger desativado não são mais exibidos no frontend, mas não são excluídos. |
A aba Tags permite definir tags no nível do trigger. Todos os problemas deste trigger serão marcados com os valores inseridos aqui.

Além disso, a opção Inherited and trigger tags permite visualizar as tags definidas no nível do template se o trigger vier desse template. Se houver vários templates com a mesma tag, essas tags são exibidas uma vez e os nomes dos templates são separados por vírgulas. Um trigger não "herda" nem exibe tags no nível do host.
| Parameter | Description |
|---|---|
| Name/Value | Defina tags personalizadas para marcar eventos de trigger. Tags são um par de nome e valor de tag. Você pode usar apenas o nome ou combiná-lo com um valor. Um trigger pode ter várias tags com o mesmo nome, mas com valores diferentes. Macros de usuário, macros de usuário com contexto, macros de descoberta em baixo nível e funções de macro functions com {{ITEM.VALUE}}, {{ITEM.LASTVALUE}} são suportadas em tags de evento.Macros de descoberta em baixo nível podem ser usadas dentro do contexto da macro. A macro {TRIGGER.ID} é suportada nos valores de tag do trigger. Isso pode ser útil para identificar triggers criados a partir de protótipos de trigger e, por exemplo, suprimir problemas desses triggers durante a manutenção. Se o comprimento total do valor expandido exceder 255, ele será truncado para 255 caracteres. Veja todas as macros suportadas para tags de evento. Tags de evento podem ser usadas para correlação de eventos, em condições de ação e também serão vistas em Monitoring > Problems ou no widget Problems. |
A aba Dependencies contém todas as dependências do trigger.
Clique em Add para adicionar uma nova dependência.
Você também pode configurar um trigger abrindo um existente, clicando no botão Clone e depois salvando com um nome diferente.
Testando expressões
É possível testar a expressão de trigger configurada para verificar qual seria o resultado da expressão com base no valor recebido.
A seguinte expressão de um template oficial é usada como exemplo:
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}
Para testar a expressão, clique em Expression constructor abaixo do campo da expressão.

No Expression constructor, todas as expressões individuais são listadas. Para abrir a janela de teste, clique em Test abaixo da lista de expressões.

Na janela de teste, você pode inserir valores de exemplo ('80', '70', '0', '1' neste exemplo) e então ver o resultado da expressão, clicando no botão Test.

O resultado das expressões individuais, assim como da expressão completa, pode ser visualizado.
"TRUE" significa que a expressão especificada está correta. Neste caso A, "80" é maior que o valor especificado {$TEMP_WARN}, "70" neste exemplo. Como esperado, um resultado "TRUE" aparece.
"FALSE" significa que a expressão especificada está incorreta. Neste caso B, {$TEMP_WARN_STATUS} "1" precisa ser igual ao valor especificado, "0" neste exemplo. Como esperado, um resultado "FALSE" aparece.
O tipo de expressão escolhido é "OR". Se pelo menos uma das condições especificadas (A ou B neste caso) for TRUE, o resultado geral também será TRUE. Isso significa que o valor atual excede o valor de aviso e que ocorreu um problema.