# Источник клиент (Zabbix trapper)

**Обновление данных по инициативе клиента**

Создать элемент данных Zabbix trapper

[![item_for_input_data.jpg](http://bobrobotirk.ru/uploads/images/gallery/2024-08/scaled-1680-/item-for-input-data.jpg)](http://bobrobotirk.ru/uploads/images/gallery/2024-08/item-for-input-data.jpg)

[документация](https://www.zabbix.com/documentation/current/en/manual/config/items/itemtypes/trapper)

 При помощи утилиты zabbix\_sender:

```bash
zabbix_sender -z <server IP address> -p 10051 -s "New host" -k trap -o "test value"
```

<table border="1" id="bkmrk--s-%D0%B8%D0%BC%D1%8F-%D1%85%D0%BE%D1%81%D1%82%D0%B0%2C-%D1%81%D1%83%D1%89%D0%B5%D1%81%D1%82" style="border-collapse: collapse; width: 100%;"><colgroup><col style="width: 18.631%;"></col><col style="width: 81.4882%;"></col></colgroup><tbody><tr><td>-s</td><td>имя хоста, существующего в hosts на сервере zabbix и к которому привязан элемент данных, в кавычках</td></tr><tr><td>-k</td><td>ключ, без кавычек</td></tr><tr><td>-o</td><td>значение, в кавычках если тип данных строка и без кавычек если число</td></tr></tbody></table>

При помощи python:

[Документация](https://blog.zabbix.com/ru/python-zabbix_utils/27032/)

```bash
pip install zabbix_utils
```

Добавляем этот код в нужный скрипт и начинаем получать информацию о времени выполнения скрипта. Отличие от параметров утилиты - ключ нужно указывать в кавычках.

```python
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

[![item_for_input_data2.jpg](http://bobrobotirk.ru/uploads/images/gallery/2024-08/scaled-1680-/item-for-input-data2.jpg)](http://bobrobotirk.ru/uploads/images/gallery/2024-08/item-for-input-data2.jpg)

Вид условия, срабатывающего при отсутствии данных более 20 минут. Поддерживаются окончания s, m, h, d, w, m

[![item_for_input_data3.jpg](http://bobrobotirk.ru/uploads/images/gallery/2024-08/scaled-1680-/item-for-input-data3.jpg)](http://bobrobotirk.ru/uploads/images/gallery/2024-08/item-for-input-data3.jpg)

Общий вид триггера:

В поле Event name можно указать текст, который будет выводиться в dashbord при оповещении. Этот текст будет отображаться при следующем срабатывании триггера, если триггер сейчас активен, то текст не изменится.

[![item_for_input_data4.jpg](http://bobrobotirk.ru/uploads/images/gallery/2024-08/scaled-1680-/item-for-input-data4.jpg)](http://bobrobotirk.ru/uploads/images/gallery/2024-08/item-for-input-data4.jpg)

Также для связанных триггеров (например 1минута-3минуты-5минут) нужно зайти в Зависимости и указать следующий по уровню триггер, т е для указанного примера нужно в триггере 1минута указать зависимость от 3минуты, в триггере 3минуты - зависимость 5минут.

Пример для триггера 1минута.

[![item_for_input_data6.jpg](http://bobrobotirk.ru/uploads/images/gallery/2024-08/scaled-1680-/item-for-input-data6.jpg)](http://bobrobotirk.ru/uploads/images/gallery/2024-08/item-for-input-data6.jpg)

Добавляем отображение на дашборде

[![item_for_input_data5.jpg](http://bobrobotirk.ru/uploads/images/gallery/2024-08/scaled-1680-/item-for-input-data5.jpg)](http://bobrobotirk.ru/uploads/images/gallery/2024-08/item-for-input-data5.jpg)

Графики

Ссылка на скриншоты графиков

```html
http://192.168.1.198/chart2.php?graphid=2845&from=now-3h&to=now
```