1 Configurando um trigger
Visão geral
Para configurar um trigger, faça o seguinte:
- Acesse: 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 obrigatórios são marcados com um asterisco vermelho.
| Parameter | Description |
|---|---|
| Name | Nome do trigger. Os macros suportados são: {HOST.HOST}, {HOST.NAME}, {HOST.PORT}, {HOST.CONN}, {HOST.DNS}, {HOST.IP}, {ITEM.VALUE}, {ITEM.LASTVALUE}, {ITEM.LOG.*} e os user macros {$MACRO}. Os macros $1, $2...$9 podem ser usados para referenciar a primeira, segunda... nona constante da expressão. Nota: os macros $1-$9 serão resolvidos corretamente se estiverem referenciando 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 dos macros de expressão {TIME} e {?EXPRESSION}. |
| Operational data | Os dados operacionais permitem definir strings arbitrárias junto com macros. Os macros serão resolvidos dinamicamente para dados em tempo real em Monitoring > Problems. Enquanto os macros no nome do trigger (veja acima) serão resolvidos para seus valores no momento em que o problema ocorrer e se tornarão a base de um nome de problema estático, os 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, serão exibidos os valores mais recentes de todos os items da expressão. O mesmo conjunto de macros é suportado como no nome do trigger. |
| Severity | Defina a severidade 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 - nesse 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 a histerese do 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 será 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 dashboard Problems. O mesmo conjunto de macros é suportado como no nome do trigger, além de {EVENT.ID}, {HOST.ID} e {TRIGGER.ID}. Observação: user macros com valores secretos não serão resolvidos 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, dados 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 serão exibidas uma vez e os nomes dos templates serã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. User macros, user macros com contexto, macros de descoberta em baixo nível e funções de macro com {{ITEM.VALUE}}, {{ITEM.LASTVALUE}} são suportados em tags de evento. Macros de descoberta em baixo nível podem ser usadas dentro do contexto de macro.A macro {TRIGGER.ID} é suportada nos valores das tags 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 todos os macros suportados 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, pressionando o 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 dependendo do valor recebido.
A expressão a seguir, 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 de 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 específico A, "80" é maior que o valor especificado em {$TEMP_WARN}, "70" neste exemplo. Como esperado, um resultado "TRUE" é exibido.
"FALSE" significa que a expressão especificada está incorreta. Neste caso específico B, {$TEMP_WARN_STATUS} "1" precisa ser igual ao valor especificado, "0" neste exemplo. Como esperado, um resultado "FALSE" é exibido.
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 alerta e que ocorreu um problema.