2 Condições

Visão geral

Uma ação só é executada somente quando o evento atende à um conjunto de condições.

Configuração

Para configurar:

  • Acesse a aba Condições do formulário de propriedades da ação
  • Selecione as condições desejadas a partir da caixa de seleção Nova condição e clique no link Adicionar
  • Selecione um tipo de cálculo (caso possua mais de uma condição)

As condições a seguir podem ser utilizadas para eventos com origem em triggers (incidentes):

Tipo da condição Operadores suportados Descrição
Aplicação =
como
diferente
Especifica ou exclui uma aplicação.
= - o evento pertence a uma trigger que possui item associado a uma aplicação.
like - o evento pertence a uma trigger que possui item associado a uma aplicação que contêm determinado texto.
diferente - o evento pertence a uma trigger que possui item associado a uma aplicação que NÃO CONTÊM determinado texto.
Grupo do host =
<>
Especifica ou exclui um grupo de hosts.
= - o evento pertence a determinado grupo.
<> - o evento NÃO PERTENCE a determinado grupo.
Template =
<>
Especifica ou exclui templates.
= - o evento pertence a uma trigger herdada de determinado template.
<> - o evento pertence a uma trigger QUE NÃO FOI HERDADA de determinado template.
Host =
<>
Especifica ou exclui hosts.
= - o evento pertence a determinado host.
<> - o evento NÃO PERTENCE a determinado host.
Trigger =
<>
Especifica ou exclui triggers.
= - o evento foi gerado por determinada trigger.
<> - o evento foi gerado por qualquer outra trigger que não a definida.
Nome da trigger como
diferente
Especifica ou exclui a necessidade de ocorrência de determinado texto no nome da trigger.
como - o evento foi gerado por trigger cujo nome contêm determinado texto. Sensível ao caso.
diferente - o evento foi gerado por trigger cujo nome NÃO CONTÊM determinado texto. Sensível ao caso.
Nota: O valor informado será verificado com o nome da trigger após a expansão do valor de todas as macros.
Severidade da trigger =
<>
>=
<=
Define a severidade da trigger.
= - igual a severidade informada
<> - diferente da severidade informada
>= - maior ou igual à severidade informada
<= - menor ou igual à severidade informada.
Valor da trigger = Define um valor para a trigger.
= - igual ao valor da trigger (OK ou INCIDENTE)
Intervalo em
não em
Especifica ou exclui um intervalo de tempo.
em - o evento deve começar dentro do intervalo.
não em - o evento não pode começar dentro do intervalo.
Consulte o manual de definição de períodos de tempo para maiores informações sobre o formato.
Status de manutenção em
não em
Especifica ou exclui que o host deva estar dentro de periodo de manutenção.
em - o host deverá estar em período de manuteção.
não em - o host não poderá estar em período de manutenção.
Nota: Se diversos hosts estiverem envolvidos na expressão da trigger a condição irá considerar se pelo menos um deles está ou deixa de estar em modo de manutenção.

Valor da trigger:

  • se o valor da trigger mudar de OK para INCIDENTE, o valor da trigger é INCIDENTE
  • se o valor da trigger mudar de INCIDENTE para OK, o valor da trigger é OK

Quando uma nova ação para triggers é criada, ela vem com duas condições automáticas (que podem ser removidas pelo usuário):

  • "Valor da trigger = INCIDENTE" - assim somente notificações de problema são enviadas. ISso quer dizer que se você configurar uma ação sem mais nenhuma condição específica ela só enviará mensagens quando os incidentes começarem. Ter esta condição como padrão é importante para que você possa receber uma única mensagem de recuperação.
  • "Status da manutenção = não em manutenção" - assim as mensagens não serão enviadas se os hosts estiverem em período de manutenção.

As seguintes condições podem ser definidas para ações com origem em descoberta de rede:

Tipo da condição Operadores suportados Descrição
IP do host =
<>
Especifica ou exclui um range de IP da descoberta de rede.
= - o IP do host está no range.
<> - o IP do host NÃO ESTÁ no range.
São suportados os seguintes formatos:
Simples IP: 192.168.1.33
Range de endereços IP: 192.168.1-10.1-254
Máscara de IPs: 192.168.4.0/24
Lista: 192.168.1.1-254, 192.168.2.1-100, 192.168.2.200, 192.168.4.0/24
O suporte a espaços na lista de IPs começou no Zabbix 3.0.0.
Tipo do serviço =
<>
Especifica ou exclui determinado tipo de serviço na descoberta de rede.
= - o serviço é o selecionado.
<> - o serviço não é do tipo selecionado.
Tipos disponíveis: SSH, LDAP, SMTP, FTP, HTTP, HTTPS (disponível desde o Zabbix 2.2), POP, NNTP, IMAP, TCP, Zabbix agent, SNMPv1 agent, SNMPv2 agent, SNMPv3 agent, ICMP ping, telnet (disponível desde o Zabbix 2.2).
Porta do serviço =
<>
Especifica ou exclui uma porta ou um range de portas TCP na descoberta de rede.
= - porta do serviço está no range.
<> - porta do serviço NÃO ESTÁ no range.
Regra de descoberta =
<>
Especifica ou exclui determinada regra de descoberta.
= - o host foi descoberto pela descoberta de rede selecionada.
<> - o host NÃO FOI descoberto pela descoberta de rede selecionada.
Verificação de descoberta =
<>
Especifica ou exclui determinada verificação de descoberta.
= - host foi descoberto pela regra de verificação selecionada.
<> - host NÃO FOI descoberto pela regra de verificação selecionada.
Objeto de descoberta = Define o tipo de objeto descoberto.
= - igual ao objeto selecionado (dispositivo ou serviço).
Status da descoberta = Ligado - tanto o host quanto os serviços verificados estão 'UP'
Fora - tanto o host quanto o serviço estão 'DOWN'
Descoberto - tanto o host quanto o serviço foram 'descobertos'
Perdido - tanto o host quanto o serviço não estão mais localizáveis
Uptime/Downtime >=
<=
Tempo em carga para o 'Host Up' e para 'Service Up'. Tempo fora de carga para 'Host Down' e 'Service Down'.
>= - é maior ou igual a. O parâmetro será informado em segundos.
<= - é menor ou igual a. O parâmetro será informado em segundos.
Valor recebido =
<>
>=
<=
como
diferente
Considera o valor recebido pelo agente (Zabbix, SNMP). Sensível ao caso. Se múltiplas verificações do mesmo tipo de agente existirem todos serão verificados (cada evento compatível gerará verificação de todas as demais condições).
= - igual ao valor.
<> - diferente do valor.
>= - maior ou igual ao valor.
<= - menor ou igual ao valor.
como - contêm o texto informado.
diferente - não contêm o texto informado.
Proxy =
<>
Especifica ou exclui determinado proxy.
= - usa o proxy informado.
<> - usa qualquer outro proxy ou o Zabbix Server.

As condições a seguir podem ser utilizadas para eventos com origem em autorregistro:

Tipo da condição Operadores suportados Descrição
Metadados do host como
diferente
Especifica ou exclui que determinado metadado deverá estar presente.
como - metadado contêm texto.
diferente - metadado não contêm dado.
O metadado de host pode ser definido no arquivo de configuração do agente.
Nome do host como
diferente
Especifica ou exclui que determinado texto deverá estar presente no nome do host.
como - nome do host contêm o texto.
diferente - nome do host não contêm o texto.
Proxy =
<>
Especifica ou exclui determinado proxy.
= - usa o proxy informado.
<> - usa qualquer outro proxy ou o Zabbix Server.

As condições a seguir podem ser utilizadas para eventos com origem interna:

Tipo da condição Operadores suportados Descrição
Aplicação =
como
diferente
Especifica ou exclui uma aplicação.
= - o evento pertence a uma trigger que possui item associado a uma aplicação.
like - o evento pertence a uma trigger que possui item associado a uma aplicação que contêm determinado texto.
diferente - o evento pertence a uma trigger que possui item associado a uma aplicação que NÃO CONTÊM determinado texto.
Tipo do evento = O item está como 'não suportado' - quando um item muda seu estado para 'não suportado'
O item está em seu estado normal - quando um item muda seu estado para 'normal'
A regra de autobusca (LLD) está em estado 'não suportado' - quando uma regra de autobusca muda seu estado para 'não suportado'
A regra de autobusca (LLD) está em estado 'normal' - quando uma regra de autobusca muda seu estado para 'normal'
A trigger está no estado 'desconhecido' - quando uma trigger muda seu estado para 'desconhecido'
A trigger está no estado 'normal' - quando uma trigger muda seu estado para 'normal'
Grupo do host =
<>
Especifica ou exclui um grupo de hosts.
= - o evento pertence a determinado grupo.
<> - o evento NÃO PERTENCE a determinado grupo.
Template =
<>
Especifica ou exclui templates.
= - o evento pertence a uma trigger herdada de determinado template.
<> - o evento pertence a uma trigger QUE NÃO FOI HERDADA de determinado template.
Host =
<>
Especifica ou exclui hosts.
= - o evento pertence a determinado host.
<> - o evento NÃO PERTENCE a determinado host.

Tipo de cálculo

Os seguintes tipos de cálculo estão disponíveis para as condições:

  • E - todas as condições são atendidas

Observe que o uso do cálculo "E" não é permitido em várias triggers quando são selecionadas a condição Trigger=. Ações só poderão ser executadas analisando dados de uma única trigger se esta condição for utilizada.

  • Ou - suficiente se atender a uma condição
  • E/Ou - combinação de dois tipos: "E" com condições de diferentes tipos e "OU" com condições do mesmo tipo, por exemplo:

Grupo de host = Oracle servers
Grupo de host = MySQL servers
Nome da trigger como 'Database is down'
Nome da trigger como 'Database is unavailable'

é entendido como

(Host group = Oracle servers or Host group = MySQL servers) and (Trigger name like 'Database is down' or Trigger name like 'Database is unavailable')

  • Expressão customizada - fórmula de cálculo definida pelo usuário para as condições. Precisa incluir todas as condições e todas representadas por letras maiúsculas (A, B, C, ...) podendo conter espaços, parênteses, tabulações, "e" (sensível ao caso), "or" (sensível ao caso).

Enquanto no exemplo anterior com And/Or representados como '(A or B) and (C or D)', em uma expressão customizada você tem várias outras formas de cálculo:

(A and B) and (C or D)
(A and B) or (C and D)
((A or B) and C) or D
etc.

Ações inativas por objetos excluídos

Se determinado objeto (host, template, trigger, etc) é utilizado em uma condição/operação de uma ação for excluído a ação será inativada para evitar execução incorreta da ação. A ação poderá ser reativada pelo usuário.

Isso ocorrerá quando excluir:

  • grupos de hosts que esteja em: condição "grupo de host", "comando remoto" de uma operação;
  • hosts que esteja em: condição "host, "comando remoto" de operação;
  • templates que estejam em: condição "template", operações de "associar a template" ou "desassociar de template" ;
  • triggers que esteja em condição de "trigger" ;
  • regras de descoberta que esteja em condição de "regra de descoberta" ou "verificação de descoberta";
  • proxies que esteja em condição de "proxy".

Nota: se um comando remoto tem como alvo vários hosts e for excluido apenas um dos hosts o mesmo será removido da lista de alvos mas a operação continuará ativa. Mas, se ele for o único host, a operação será removida também. O mesmo ocorrerá com operações de associação e desassociação com templates.

Ações não são inativadas quando se excluem usuários ou grupos de usuários.

Internal event actions

The following conditions can be set for actions based on internal events:

Condition type Supported operators Description
Event type equals Item in "not supported" state - matches events where an item goes from a 'normal' to 'not supported' state
Low-level discovery rule in "not supported" state - matches events where a low-level discovery rule goes from a 'normal' to 'not supported' state
Trigger in "unknown" state - matches events where a trigger goes from a 'normal' to 'unknown' state
Host group equals
does not equal
Specify host groups or host groups to exclude.
equals - event belongs to this host group.
does not equal - event does not belong to this host group.
Tag name equals
does not equal
contains
does not contain
Specify event tag or event tag to exclude.
equals - event has this tag
does not equal - event does not have this tag
contains - event has a tag containing this string
does not contain - event does not have a tag containing this string
Tag value equals
does not equal
contains
does not contain
Specify event tag and value combination or tag and value combination to exclude.
equals - event has this tag and value
does not equal - event does not have this tag and value
contains - event has a tag and value containing these strings
does not contain - event does not have a tag and value containing these strings
Template equals
does not equal
Specify templates or templates to exclude.
equals - event belongs to an item/trigger/low-level discovery rule inherited from this template.
does not equal - event does not belong to an item/trigger/low-level discovery rule inherited from this template.
Host equals
does not equal
Specify hosts or hosts to exclude.
equals - event belongs to this host.
does not equal - event does not belong to this host.

Type of calculation

The following options of calculating conditions are available:

  • And - all conditions must be met

Note that using "And" calculation is disallowed between several triggers when they are selected as a Trigger= condition. Actions can only be executed based on the event of one trigger.

  • Or - enough if one condition is met
  • And/Or - combination of the two: AND with different condition types and OR with the same condition type, for example:

Host group equals Oracle servers
Host group equals MySQL servers
Trigger name contains 'Database is down'
Trigger name contains 'Database is unavailable'

is evaluated as

(Host group equals Oracle servers or Host group equals MySQL servers) and (Trigger name contains 'Database is down' or Trigger name contains 'Database is unavailable')

  • Custom expression - a user-defined calculation formula for evaluating action conditions. It must include all conditions (represented as uppercase letters A, B, C, ...) and may include spaces, tabs, brackets ( ), and (case sensitive), or (case sensitive), not (case sensitive).

While the previous example with And/Or would be represented as (A or B) and (C or D), in a custom expression you may as well have multiple other ways of calculation:

(A and B) and (C or D)
(A and B) or (C and D)
((A or B) and C) or D
(not (A or B) and C) or not D
etc.

Actions disabled due to deleted objects

If a certain object (host, template, trigger, etc) used in an action condition/operation is deleted, the condition/operation is removed and the action is disabled to avoid incorrect execution of the action. The action can be re-enabled by the user.

This behavior takes place when deleting:

  • host groups ("host group" condition, "remote command" operation on a specific host group);
  • hosts ("host" condition, "remote command" operation on a specific host);
  • templates ("template" condition, "link to template" and "unlink from template" operations);
  • triggers ("trigger" condition);
  • discovery rules (when using "discovery rule" and "discovery check" conditions).

Note: If a remote command has many target hosts, and we delete one of them, only this host will be removed from the target list, the operation itself will remain. But, if it's the only host, the operation will be removed, too. The same goes for "link to template" and "unlink from template" operations.

Actions are not disabled when deleting a user or user group used in a "send message" operation.