Мне дали задание отслеживать конкретное значение в некоторой базе данных сервера MySQL, мне нужно поднять уведомление, если значение не было изменено за последние 10 минут.
Я добавил в UserParameter_mysql.conf
следующая строка:
UserParameter=mysql.query, echo "select id from resolved_clicks order by id desc limit 1" | mysql -N -u zabbix -pPASSWORD aggregator
И при запуске проверки с Zabbix сервера возвращает значение правильно:
[root@zabbix ~]# zabbix_get -s IP -k mysql.query
7957178672
[root@zabbix ~]#
Следующим шагом было создание элемента, который я уже сделал, и теперь я пытаюсь настроить триггер. У триггера должно появиться уведомление, если значение не обновлялось за последние 10 минут. Как я могу настроить триггер, чтобы он отражал это условие? Спасибо!
Изменить №1: Вот последние данные из только что созданного триггера: Мои вопросы:
1. What's the meaning of change?
2. How can I know from looking on the Change row how many seconds
have passed since the last 2 checks?
3. How can I test that the trigger is operating successfully without
having to reproduce the problem?
Ваш вопрос не на 100% ясен, поэтому я рассмотрел обе возможности:
Если вы хотите проверить, не поступают ли данные от Zabbix агента, используйте nodata
функция.
Возврат:
1 - если данные не поступали за период времени в секундах. Период не должен быть меньше 30 секунд.
0 - иначе
Например, триггер, который сработает, если данные не были получены в течение 10 минут:
{mysql.query.nodata(600)}=1
Если вы хотите проверить, не изменилось ли значение, используйте delta
.
Возвращает разницу между максимальным и минимальным значениями за период ('max ()' минус 'min ()'). Период задается в секундах или как количество собранных значений (перед которым стоит решетка #) в первом параметре.
Например, триггер, который сработает, если значение не изменилось в течение 10 минут:
{mysql.query.delta(600)}=0
Наконец, вы, вероятно, захотите переименовать свой предмет. mysql.query
является очень общим и уже используется в распространенных шаблонах MySQL. Что-то вроде aggregator.highest_click_id
может быть более подходящим.