7 Protocole d’export JSON délimité par des sauts de ligne

Cette section présente les détails du protocole d’export au format JSON délimité par des sauts de ligne, utilisé dans :

Les éléments suivants peuvent être exportés :

Tous les fichiers ont l’extension .ndjson. Chaque ligne du fichier d’export est un objet JSON.

Événements de déclencheur

Les informations suivantes sont exportées pour un événement de problème :

Champ Type Description
clock nombre Nombre de secondes depuis Epoch jusqu'au moment où le problème a été détecté (partie entière).
ns nombre Nombre de nanosecondes à ajouter à clock pour obtenir une heure précise de détection du problème.
valeur nombre 1 (toujours).
eventid nombre ID d'événement de problème.
name chaîne Nom de l'événement de problème.
severity nombre Gravité de l'événement de problème (0 - Non classifié, 1 - Information, 2 - Avertissement, 3 - Moyen, 4 - Haut, 5 - Désastre).
hosts tableau Liste des hôtes impliqués dans l'expression du déclencheur ; il doit y avoir au moins un élément dans le tableau.
- objet
host chaîne Nom d'hôte.
name chaîne Nom d'hôte visible.
groups tableau Liste des groupes d'hôtes de tous les hôtes impliqués dans l'expression du déclencheur ; il doit y avoir au moins un élément dans le tableau.
- chaîne Nom du groupe d'hôtes.
tags tableau Liste des tags problématiques (peut être vide).
- objet
tag chaîne Nom du tag.
value chaîne Valeur du tag (peut être vide).

Les informations suivantes sont exportées pour un événement de récupération :

Champ Type Description
clock nombre Nombre de secondes depuis Epoch jusqu'au moment où le problème a été résolu (partie entière).
ns nombre Nombre de nanosecondes à ajouter à clock pour obtenir un temps de résolution précis du problème.
value nombre 0 (toujours).
eventid nombre ID d'événement de récupération.
p_eventid nombre ID d'événement de problème.
Exemples

Problème :

{"clock":1519304285,"ns":123456789,"value":1,"name":"Either Zabbix agent is unreachable on Host B or pollers are too busy on 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"}]}

Récupération :

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

Problème (génération multiple d'événements problème) :

{"clock":1519304286,"ns":123456789,"value":1,"eventid":43,"name":"Either Zabbix agent is unreachable on Host B or pollers are too busy on 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":"Either Zabbix agent is unreachable on Host B or pollers are too busy on 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"}]}

Récupération :

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

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

Valeurs d’élément

Les informations suivantes sont exportées pour une valeur d’élément collectée :

Champ Type Description
host object Nom d’hôte de l’élément hôte.
host string Nom d’hôte.
name string Nom d’hôte visible.
groups array Liste des groupes d’hôtes de l’élément hôte ; le tableau doit contenir au moins un élément.
- string Nom du groupe d’hôtes.
item_tags array Liste des tags d’élément (peut être vide).
- object
tag string Nom du tag.
value string Valeur du tag (peut être vide).
itemid number ID de l’élément.
name string Nom visible de l’élément.
clock number Nombre de secondes écoulées depuis l’époque Unix jusqu’au moment où la valeur a été collectée (partie entière).
ns number Nombre de nanosecondes à ajouter à clock pour obtenir l’heure précise de collecte de la valeur.
timestamp
(Log uniquement)
number 0 si non disponible.
source
(Log uniquement)
string Chaîne vide si non disponible.
severity
(Log uniquement)
number 0 si non disponible.
eventid
(Log uniquement)
number 0 si non disponible.
value number (pour les éléments numériques) ou
string (pour les éléments texte)
Valeur de l’élément collectée.
type number Type de valeur collectée :
0 - numérique à virgule flottante, 1 - caractère, 2 - journal, 3 - numérique non signé, 4 - texte, 5 - binaire, 6 - JSON
Exemples

Valeur numérique (non signée) :

{"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}

Valeur numérique (à virgule flottante) :

{"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}

Valeur de type caractère, texte :

{"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}

Valeur de journal :

{"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}

Tendances

Les informations suivantes sont exportées pour une valeur de tendance calculée :

Field Type Description
host object Nom d'hôte de l'hôte de l'élément.
host string Nom d'hôte.
name string Nom d'hôte visible.
groups array Liste des groupes d'hôtes de l'hôte de l'élément ; le tableau doit contenir au moins un élément.
- string Nom du groupe d'hôtes.
item_tags array Liste des tags de l'élément (peut être vide).
- object
tag string Nom du tag.
value string Valeur du tag (peut être vide).
itemid number ID de l'élément.
name string Nom visible de l'élément.
clock number Nombre de secondes depuis l'époque jusqu'au moment où la valeur a été collectée (partie entière).
count number Nombre de valeurs collectées pour une heure donnée.
min number Valeur minimale de l'élément pour une heure donnée.
avg number Valeur moyenne de l'élément pour une heure donnée.
max number Valeur maximale de l'élément pour une heure donnée.
type number Type de valeur :
0 - numérique à virgule flottante, 3 - numérique non signé
Exemples

Valeur numérique (non signée) :

{"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}

Valeur numérique (à virgule flottante) :

{"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}