2012-11-05 2 views
1

매일 20h에서 22h까지 로그 파일을 검사하고 특정 패턴을 찾을 zabbix 트리거를 설정해야합니다. 이 두 시간 내에 데이터가없는 경우 알림을 보내야합니다. I 구성된 트리거 구문은 다음과 같은 것이다 :Zabbix 트리거가 특정 시간대에 파일을 검사합니다.


"item.time {(0)}> 200,000 & item.time {(0)} {item.nodata (7800)} "= 1


이 트리거가 잘 작동합니다. 그러나, 나는이 개 나쁜 측면 나타났습니다 : 파일이 20 시간에 수신되지 않은 경우

  1. 을, 그것은 경보를 발생,하지만 난 그게 파일이 여전히 22H에서 수신되지 않은 경우에만, 그것을 발사 할 필요가 . (더 이상 지정된 기간 동안되면)는 22h00m30s 없습니다 일단
  2. 파일이 22H까지 접수되지 않은 경우에도 는
  3. , 그것은 OK 메시지를 보냅니다 내가 시간을 단축 생각했다

30 분에서 30 분 (21시 30 분에서 22 시까 지) :이 첫 번째 문제는 해결되었지만 두 번째 문제는 여전히 문제가 있습니다.

마지막으로 한 가지. 기간을 30 분으로 줄이고 에이전트가 7800 (nodata (7800))에 대한 데이터를 찾은 경우 21시 30 분 전에 작성된 로그 항목을 확인합니까?

언제든지 제안 해 주시면 감사하겠습니다.

답변

0

cronjob zabbix_trapper를 사용하여 데이터를 보내는 것이 더 나을 수 있습니다.

Zabbix 서버에서 "file.summary"와 같은 것으로 트랩퍼 검사를 만듭니다. 호스트에서 적절한 시간에 파일을 검사하는 스크립트를 작성합니다. 이 같은이 같을 수 있습니다! 당신은 당신의 알람을 설정해야합니다

#!/bin/bash 
set -e 

if [[ `pattern check` == "0" ]] 
then 
    /usr/bin/zabbix_sender -z zabbix-server.com -s `hostname` -k file.summary -o 1 
else 
    /usr/bin/zabbix_sender -z zabbix-server.com -s `hostname` -k file.summary -o 0 
fi 

이 값으로 트리거 할을 = 0

관련 문제