5 Протокол экспорта в режиме реального времени

В этом разделе представлены детали реализации протокола экспорта в режиме реального времени в JSON формате с разделение новой строкой для:

Все файлы с .ndjson расширением. Каждая строка файла экспорта является JSON объектом.

События на триггера

Следующая информация экспортируется по событию на проблему:

Поле Тип Описание
hosts массив Список узлов сети, которые указаны в выражении триггера; должен быть по крайней мере один элемент в массиве.
- объект
host строка Имя узла сети.
name строка Видимое имя узла сети.
groups массив Список групп узлов сети всех узлов сети, которые указаны в выражении триггера; должен быть по крайней мере один элемент в массив.
- строка Имя группы узлов сети.
tags массив Список тегов проблемы (может быть пустым).
- объект
тег строка Имя тега.
значение строка Значение тега (может быть пустым).
name строка Имя события о проблеме.
clock число Количество секунд начиная с Эпохи к моменту, когда произошло определение проблемы (целочисленная часть).
ns число Количество наносекунд, которое добавляется к clock, чтобы получить более точное время определения проблемы.
eventid число ID события о проблеме.
value число 1 (всегда).

Следующая информация экспортируется по событию на восстановление:

Поле Тип Описание
clock число Количество секунд начиная с Эпохи к моменту, когда проблема была решена (целочисленная часть).
ns число Количество наносекунд, которое добавляется к clock, чтобы получить более точное время решения проблемы.
eventid число ID события о восстановлении.
p_eventid число ID события о проблеме.
value число 0 (всегда).
Примеры

Проблема:

{"hosts":[{"host":"Host B", "name":"Host B visible"},{"host":"Zabbix Server","name":"Zabbix Server visible"}],"groups":["Group X","Group Y","Group Z","Zabbix servers"],"tags":[{"tag":"availability","value":""},{"tag":"data center","value":"Riga"}],"name":"Either Zabbix agent is unreachable on Host B or pollers are too busy on Zabbix Server","clock":1519304285,"ns":123456789,"eventid":42, "value":1}

Восстановление:

{"clock":1519304345,"ns":987654321,"eventid":43,"p_eventid":42,"value":0}

Проблемы (генерация нескольких событий о проблемах):

{"hosts":[{"host":"Host B", "name":"Host B visible"},{"host":"Zabbix Server","name":"Zabbix Server visible"}],"groups":["Group X","Group Y","Group Z","Zabbix servers"],"tags":[{"tag":"availability","value":""},{"tag":"data center","value":"Riga"}],"name":"Either Zabbix agent is unreachable on Host B or pollers are too busy on Zabbix Server","clock":1519304286,"ns":123456789,"eventid":43, "value":1}
       
       {"hosts":[{"host":"Host B", "name":"Host B visible"},{"host":"Zabbix Server","name":"Zabbix Server visible"}],"groups":["Group X","Group Y","Group Z","Zabbix servers"],"tags":[{"tag":"availability","value":""},{"tag":"data center","value":"Riga"}],"name":"Either Zabbix agent is unreachable on Host B or pollers are too busy on Zabbix Server","clock":1519304286,"ns":123456789,"eventid":43, "value":1}

Восстановление:

{"clock":1519304346,"ns":987654321,"eventid":44,"p_eventid":43,"value":0}
       
       {"clock":1519304346,"ns":987654321,"eventid":44,"p_eventid":42,"value":0}

Значения элементов данных

Следующая информация экспортируется по собранному значению элемента данных:

Поле Тип Описание
host объект Имя узла, которому принадлежит элемент данных.
host строка Имя узла сети.
name строка Видимое имя узла сети.
groups массив Список групп узлов сети, которым принадлежит узел сети элемента данных; должен быть по крайней мере один элемент в массиве.
- строка Имя группы узлов сети.
applications массив Список групп элементов данных элемента данных; пусто, если отсутствуют.
- строка Имя группы элементов данных.
itemid число ID элемента данных.
name строка Видимое имя элемента данных.
clock число Количество секунд начиная с Эпохи к моменту, когда значение было собрано (целочисленная часть).
ns число Количество наносекунд, которое добавляется к clock, чтобы получить более точное время сбора значения.
timestamp
(только Журнал (лог))
число 0 если недоступно.
source
(только Журнал (лог))
строка Пустая строка если недоступно.
severity
(только Журнал (лог))
число 0 если недоступно.
eventid
(только Журнал (лог))
число 0 если недоступно.
value число (для числовых элементов данных) или
строка (для текстовых элементов данных)
Собранное значение элемента данных.
type число Тип собранного значения:
0 - числовое с дробной точкой, 1 - символ, 2 - журнал (лог), 3 - целое положительное, 4 - текст
Примеры

Числовое (целое положительное) значение:

{"host":{"host":"Host B","name":"Host B visible"},"groups":["Group X","Group Y","Group Z"],"applications":["Zabbix Agent","Availability"],"itemid":3,"name":"Agent availability","clock":1519304285,"ns":123456789,"value":1,"type":3}

Числовое (дробное) значение:

{"host":{"host":"Host B","name":"Host B visible"},"groups":["Group X","Group Y","Group Z"],"applications":["CPU","Performance"],"itemid":4,"name":"CPU Load","clock":1519304285,"ns":123456789,"value":"0.1","type":0}

Символьное значение, текстовое значение:

{"host":{"host":"Host B","name":"Host B visible"},"groups":["Group X","Group Y","Group Z"],"applications":["Zabbix Agent","Installed software versions"],"itemid":2,"name":"Agent version","clock":1519304285,"ns":123456789,"value":"3.4.4","type":4}

Значение журнала (лога):

{"host":{"host":"Host A","name":"Host A visible"},"groups":["Group X","Group Y","Group Z"],"applications":["Log files","Critical"],"itemid":1,"name":"Messages in log file","clock":1519304285,"ns":123456789,"timestamp":1519304285,"source":"","severity":0,"eventid":0,"value":"log file message","type":2}

Динамика изменений

Следующая информация экспортируется по вычисленному значению динамики изменений:

Поле Тип Описание
host объект Имя узла сети, которому принадлежит элемент данных.
host строка Имя узла сети.
name строка Видимое имя узла сети.
groups массив Список групп узлов сети, которым принадлежит узел сети элемента данных; должен быть по крайней мере один элемент в массиве.
- строка Имя группы узлов сети.
applications массив Список групп элементов данных элемента данных; пусто, если отсутствуют.
- строка Имя группы элементов данных.
itemid число ID элемента данных.
name строка Видимое имя элемента данных.
clock число Количество секунд с начала Эпохи к моменту, когда значение было собрано (целочисленная часть).
count число Количество значений, которые были собраны за данный час.
min число Минимальное значение элемента данных за данный час.
avg число Среднее значение элемента данных за данный час.
max число Максимальное значение элемента данных за данный час.
type число Тип значения:
0 - числовое с дробной точкой, 3 - целое положительное
Примеры

Числовое (целое положительное) значение:

{"host":{"host":"Host B","name":"Host B visible"},"groups":["Group X","Group Y","Group Z"],"applications":["Zabbix Agent","Availability"],"itemid":3,"name":"Agent availability","clock":1519311600,"count":60,"min":1,"avg":1,"max":1,"type":3}

Числовое (дробное) значение:

{"host":{"host":"Host B","name":"Host B visible"},"groups":["Group X","Group Y","Group Z"],"applications":["CPU","Performance"],"itemid":4,"name":"CPU Load","clock":1519311600,"count":60,"min":0.01,"avg":0.15,"max":1.5,"type":0}