Entendendo os gatilhos do Zabbix

2

Eu tenho o zabbix configurado com um item para monitorar um arquivo de log em um cliente zabbix:

log["/var/log/program_name/client.log","ERROR:","UTF-8",100]

E um gatilho para determinar quando esse arquivo de log recebe mais ERROS:

{Template_Linux:log["/var/log/program_name/client.log","ERROR:","UTF-8",100].change(0)}#0

Esse gatilho é acionado quando o arquivo de log recebe ERROR pela primeira vez, mas esse primeiro gatilho fica pronto para sempre nos Triggers de monitoramento & gt ;. Meu entendimento é que na próxima vez que o servidor verificar o valor de log ["/ var / log / nome_do_programa / client.log", "ERRO:", "UTF-8", 100] e verá que não mudou isso o gatilho iria embora. Obviamente, este não é o caso. Alguém poderia explicar por que esse primeiro gatilho não está indo embora?

Por fim, meu objetivo é receber um e-mail sempre que ERROS forem adicionados a esse arquivo de log, mas gostaria de entender como os gatilhos estão funcionando primeiro.

    
por Mediocre Gopher 16.05.2011 / 20:22

2 respostas

1

O item de agente "log" verifica todo o log por padrão, você deve avisar para usar o modo "ignorar" para evitar o processamento de dados mais antigos. Basta adicionar um ", pule" para o final de seus parâmetros para o item de log. Verifique cuidadosamente esta página na documententação .

    
por 17.01.2014 / 11:51
0

Tanto o item de modelo & Gatilho parece OK.

  • o item é anexado a esse host do modelo original ou você o clonou e fez algumas alterações?
  • O item está sendo atualizado corretamente? (Verificar monitoramento | Últimos dados)?

.change (0) se comporta como você esperaria, ele retorna 1, se a última e a última string forem diferentes.

Apenas para depurar o sake, tente o seguinte:

{Template_Linux:log["/var/log/program_name/client.log","ERROR:","UTF-8",100].last(0)}#{Template_Linux:log["/var/log/program_name/client.log","ERROR:","UTF-8",100].prev(0)}
    
por 17.05.2011 / 11:18