Триггер Zabbix проверяет файл за определенный период времени

Мне нужно настроить триггер zabbix, который будет проверять файл журнала с 20 до 22 часов каждый день и искать определенный шаблон. В случае отсутствия данных за эти два часа должно быть запущено оповещение. Синтаксис настроенного мной триггера следующий:


"{item.time (0)}> 200000 & {item.time (0)}‹ 220000 & {item.nodata (7800)} = 1 "


Этот триггер отлично работает. Однако я заметил две плохие стороны:

  1. Если файл не был получен в 20 часов, он выдает предупреждение, но он мне нужен, чтобы запустить его, только если файл все еще не получен в 22 часа.
  2. Даже если файл не был получен до 22 часов, он отправляет сообщение ОК, когда это 22 часа 30 минут (когда он больше не в указанный период времени).

Я думал о сокращении периода времени до 30 минут (с 21:30 до 22:00): это решило первую проблему, но у меня все еще есть проблемы со второй.

Последняя вещь. Если я уменьшу период времени до 30 минут, но продолжу поиск данных агентом для 7800 секунд (nodata (7800)), будет ли он проверять записи журналов, которые были написаны до 21:30?

Пожалуйста, если есть предложения, буду признателен!


person safé    schedule 05.11.2012    source источник


Ответы (1)


Возможно, для отправки данных лучше использовать 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.

person Stephen Wood    schedule 10.01.2013