Источник клиент (Zabbix trapper)
Обновление данных по инициативе клиента
Создать элемент данных Zabbix trapper
При помощи утилиты zabbix_sender:
zabbix_sender -z <server IP address> -p 10051 -s "New host" -k trap -o "test value"
-s | имя хоста, существующего в hosts на сервере zabbix и к которому привязан элемент данных, в кавычках |
-k | ключ, без кавычек |
-o | значение, в кавычках если тип данных строка и без кавычек если число |
При помощи python:
pip install zabbix_utils
Добавляем этот код в нужный скрипт и начинаем получать информацию о времени выполнения скрипта. Отличие от параметров утилиты - ключ нужно указывать в кавычках.
from zabbix_utils import Sender
import time
import datetime
sender = Sender(server='192.168.1.198', port=10051)
# Parameters: (host, key, value, clock)
d = datetime.datetime.now()
unix_time = int(time.mktime(d.timetuple()))
resp = sender.send_value('moodle', 'lastupdate', 0, unix_time)
if resp.failed == 0:
# Print a success message along with the response time
print(f"Value sent successfully in {resp.time}")
else:
# Print a failure message
print("Failed to send value")
print(resp.details)
Добавляем триггер, в условиях для анализа последних данных функция nodata
Вид условия, срабатывающего при отсутствии данных более 20 минут. Поддерживаются окончания s, m, h, d, w, m
Общий вид триггера:
В поле Event name можно указать текст, который будет выводиться в dashbord при оповещении. Этот текст будет отображаться при следующем срабатывании триггера, если триггер сейчас активен, то текст не изменится.
Также для связанных триггеров (например 1минута-3минуты-5минут) нужно зайти в Зависимости и указать следующий по уровню триггер, т е для указанного примера нужно в триггере 1минута указать зависимость от 3минуты, в триггере 3минуты - зависимость 5минут.
Пример для триггера 1минута.
Добавляем отображение на дашборде
Графики
Ссылка на скриншоты графиков
http://192.168.1.198/chart2.php?graphid=2845&from=now-3h&to=now
No Comments