7 Протокол экспорта в формате JSON с разделением по строкам
В этом разделе представлены сведения о протоколе экспорта в формате JSON с разделением по строкам, который используется в:
Можно экспортировать следующее:
- события триггеров
- значения элементов данных
- тренды (только экспорт в файлы)
Все файлы имеют расширение .ndjson. Каждая строка файла экспорта представляет собой объект JSON.
События триггеров
Для события проблемы экспортируется следующая информация:
| Field | Type | Description | ||
|---|---|---|---|---|
| clock | number | Количество секунд с начала эпохи до момента обнаружения проблемы (целая часть). | ||
| ns | number | Количество наносекунд, которое необходимо добавить к clock, чтобы получить точное время обнаружения проблемы. |
||
| value | number | 1 (всегда). | ||
| eventid | number | ID события проблемы. | ||
| name | string | Имя события проблемы. | ||
| severity | number | Важность события проблемы (0 - Не классифицировано, 1 - Информация, 2 - Предупреждение, 3 - Средняя, 4 - Высокая, 5 - Катастрофа). | ||
| hosts | array | Список узлов сети, задействованных в выражении триггера; массив должен содержать как минимум один элемент. | ||
| - | object | |||
| host | string | Имя узла сети. | ||
| name | string | Отображаемое имя узла сети. | ||
| groups | array | Список групп узлов сети для всех узлов сети, задействованных в выражении триггера; массив должен содержать как минимум один элемент. | ||
| - | string | Имя группы узлов сети. | ||
| tags | array | Список тегов проблемы (может быть пустым). | ||
| - | object | |||
| tag | string | Имя тега. | ||
| value | string | Значение тега (может быть пустым). | ||
Для события восстановления экспортируется следующая информация:
| Field | Type | Description |
|---|---|---|
| clock | number | Количество секунд с начала эпохи до момента устранения проблемы (целая часть). |
| ns | number | Количество наносекунд, которое необходимо добавить к clock, чтобы получить точное время устранения проблемы. |
| value | number | 0 (всегда). |
| eventid | number | ID события восстановления. |
| p_eventid | number | ID события проблемы. |
Примеры
Проблема:
{"clock":1519304285,"ns":123456789,"value":1,"name":"Либо агент Zabbix недоступен на узле сети Host B, либо процессы опроса слишком заняты на сервере Zabbix Server","severity":3,"eventid":42, "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"}]}
Восстановление:
{"clock":1519304345,"ns":987654321,"value":0,"eventid":43,"p_eventid":42}
Проблема (генерация нескольких событий проблем):
{"clock":1519304286,"ns":123456789,"value":1,"eventid":43,"name":"Либо агент Zabbix недоступен на узле сети Host B, либо процессы опроса слишком заняты на сервере Zabbix Server","severity":3,"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"}]}
{"clock":1519304286,"ns":123456789,"value":1,"eventid":43,"name":"Либо агент Zabbix недоступен на узле сети Host B, либо процессы опроса слишком заняты на сервере Zabbix Server","severity":3,"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"}]}
Восстановление:
{"clock":1519304346,"ns":987654321,"value":0,"eventid":44,"p_eventid":43}
{"clock":1519304346,"ns":987654321,"value":0,"eventid":44,"p_eventid":42}
Значения элементов данных
Следующая информация экспортируется для собранного значения элемента данных:
| Поле | Тип | Описание | ||
|---|---|---|---|---|
| host | object | Имя узла сети элемента данных. | ||
| host | string | Имя узла сети. | ||
| name | string | Видимое имя узла сети. | ||
| groups | array | Список групп узлов сети узла сети элемента данных; в массиве должен быть как минимум один элемент. | ||
| - | string | Имя группы узлов сети. | ||
| item_tags | array | Список тегов элемента данных (может быть пустым). | ||
| - | object | |||
| tag | string | Имя тега. | ||
| value | string | Значение тега (может быть пустым). | ||
| itemid | number | ID элемента данных. | ||
| name | string | Видимое имя элемента данных. | ||
| clock | number | Количество секунд с начала эпохи до момента, когда значение было собрано (целая часть). | ||
| ns | number | Количество наносекунд, которое нужно добавить к clock, чтобы получить точное время сбора значения. |
||
| timestamp (Log only) |
number | 0, если недоступно. | ||
| source (Log only) |
string | Пустая строка, если недоступно. | ||
| severity (Log only) |
number | 0, если недоступно. | ||
| eventid (Log only) |
number | 0, если недоступно. | ||
| value | number (for numeric items) or string (for text items) |
Собранное значение элемента данных. | ||
| type | number | Тип собранного значения: 0 — числовое с плавающей точкой, 1 — символьное, 2 — журнал, 3 — числовое без знака, 4 — текст, 5 — двоичное, 6 — JSON |
||
Примеры
Числовое (беззнаковое) значение:
{"host":{"host":"Host B","name":"Host B visible"},"groups":["Group X","Group Y","Group Z"],"item_tags":[{"tag":"foo","value":"test"}],"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"],"item_tags":[{"tag":"foo","value":"test"}],"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"],"item_tags":[{"tag":"foo","value":"test"}],"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"],"item_tags":[{"tag":"foo","value":"test"}],"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 | object | Имя узла сети элемента данных. | ||
| host | string | Имя узла сети. | ||
| name | string | Видимое имя узла сети. | ||
| groups | array | Список групп узла сети элемента данных; в массиве должен быть как минимум один элемент. | ||
| - | string | Имя группы узла сети. | ||
| item_tags | array | Список тегов элемента данных (может быть пустым). | ||
| - | object | |||
| tag | string | Имя тега. | ||
| value | string | Значение тега (может быть пустым). | ||
| itemid | number | ID элемента данных. | ||
| name | string | Видимое имя элемента данных. | ||
| clock | number | Количество секунд с начала эпохи до момента, когда значение было собрано (целая часть). | ||
| count | number | Количество значений, собранных за данный час. | ||
| min | number | Минимальное значение элемента данных за данный час. | ||
| avg | number | Среднее значение элемента данных за данный час. | ||
| max | number | Максимальное значение элемента данных за данный час. | ||
| type | number | Тип значения: 0 - числовой с плавающей точкой, 3 - числовой без знака |
||
Примеры
Числовое (беззнаковое) значение:
{"host":{"host":"Host B","name":"Host B visible"},"groups":["Group X","Group Y","Group Z"],"item_tags":[{"tag":"foo","value":"test"}],"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"],"item_tags":[{"tag":"foo","value":"test"}],"itemid":4,"name":"CPU Load","clock":1519311600,"count":60,"min":0.01,"avg":0.15,"max":1.5,"type":0}