L'échange de données Serveur-Proxy est basé sur le format JSON.
Les messages de requête et de réponse doivent commencer par l’en-tête et la longueur des données.
La requête proxy config
est envoyée par le serveur pour fournir au proxy ses données de configuration. Cette requête est envoyée toutes les ProxyConfigFrequency
(paramètre de configuration au niveau du serveur) secondes.
nom | type de valeur | description | |||
---|---|---|---|---|---|
serveur→proxy : | |||||
request | chaîne | 'proxy config' | |||
<table> | objet | un ou plusieurs objets avec des données <table> | |||
fields | tableau | tableau de noms de champs | |||
- | chaîne | nom de champs | |||
data | tableau | tableau de lignes | |||
- | tableau | tableau de colonnes | |||
- | chaîne,nombre | valeur de la colonne dont le type dépend du type de colonne dans le schéma de base de données | |||
proxy→serveur : | |||||
response | chaîne | les informations de succès de la requête ('success' ou 'failed') | |||
version | chaîne | la version du proxy (<majeure>.<mineure>.<build>) |
Exemple :
serveur→proxy :
{
"request": "proxy config",
"globalmacro":{
"fields":[
"globalmacroid",
"macro",
"value"
],
"data":[
[
2,
"{$SNMP_COMMUNITY}",
"public"
]
]
},
"hosts":{
"fields":[
"hostid",
"host",
"status",
"ipmi_authtype",
"ipmi_privilege",
"ipmi_username",
"ipmi_password",
"name",
"tls_connect",
"tls_accept",
"tls_issuer",
"tls_subject",
"tls_psk_identity",
"tls_psk"
],
"data":[
[
10001,
"Template OS Linux",
3,
-1,
2,
"",
"",
"Template OS Linux",
1,
1,
"",
"",
"",
""
],
[
10050,
"Template App Zabbix Agent",
3,
-1,
2,
"",
"",
"Template App Zabbix Agent",
1,
1,
"",
"",
"",
""
],
[
10105,
"Logger",
0,
-1,
2,
"",
"",
"Logger",
1,
1,
"",
"",
"",
""
]
]
},
"interface":{
"fields":[
"interfaceid",
"hostid",
"main",
"type",
"useip",
"ip",
"dns",
"port",
"bulk"
],
"data":[
[
2,
10105,
1,
1,
1,
"127.0.0.1",
"",
"10050",
1
]
]
},
...
}
proxy→serveur :
La requête proxy data
est utilisée pour obtenir de la part du proxy des données sur la disponibilité de l'hôte, l'historique, la découverte et l'auto-enregistrement. Cette demande est envoyée toutes les ProxyDataFrequency
(paramètre de configuration au niveau du serveur) secondes.
nom | type de valeur | description | |
---|---|---|---|
serveur→proxy : | |||
request | chaîne | 'proxy data' | |
proxy→serveur : | |||
session | chaîne | jeton de session de données | |
host availability | tableau | (optionnel) tableau d'objets de données de disponibilité d'hôte | |
hostid | nombre | id de l'hôte | |
disponible | nombre | disponibilité de l'agent Zabbix 0, HOST_AVAILABLE_UNKNOWN - inconnu 1, HOST_AVAILABLE_TRUE - disponible 2, HOST_AVAILABLE_FALSE - indisponible |
|
error | chaîne | Message d'erreur de l'agent Zabbix ou chaîne vide | |
snmp_disponible | nombre | disponibilité de l'agent SNMP 0, HOST_AVAILABLE_UNKNOWN - inconnu 1, HOST_AVAILABLE_TRUE - disponible 2, HOST_AVAILABLE_FALSE - indisponible |
|
snmp_error | chaîne | Message d'erreur de l'agent SNMP ou chaîne vide | |
ipmi_disponible | nombre | disponibilité de l'agent IPMI 0, HOST_AVAILABLE_UNKNOWN - inconnu 1, HOST_AVAILABLE_TRUE - disponible 2, HOST_AVAILABLE_FALSE - indisponible |
|
ipmi_error | chaîne | Message d'erreur de l'agent IPMI ou chaîne vide | |
jmx_disponible | nombre | disponibilité de l'agent JMX 0, HOST_AVAILABLE_UNKNOWN - inconnu 1, HOST_AVAILABLE_TRUE - disponible 2, HOST_AVAILABLE_FALSE - indisponible |
|
jmx_error | chaîne | Message d'erreur de l'agent JMX ou chaîne vide | |
history data | tableau | (optionnel) tableau d'objets de données d'historique | |
itemid | nombre | id de l'élément | |
clock | nombre | horodatage de la valeur de l'élément (secondes) | |
ns | nombre | horodatage de la valeur de l'élément (nanosecondes) | |
value | chaîne | (optionnel) valeur de l'élément | |
id | nombre | id de la valeur (compteur croissant, unique dans une session de données) | |
timestamp | nombre | (optionnel) horodatage des éléments de type de journal | |
source | chaîne | (optionnel) valeur source de l'élément eventlog | |
severity | nombre | (optionnel) valeur de gravité de l'élément eventlog | |
eventid | nombre | (optionnel) valeur de l'id de l'événement de l'élément eventlog | |
state | chaîne | (optionnel) statut de l'élément 0, ITEM_STATE_NORMAL 1, ITEM_STATE_NOTSUPPORTED |
|
lastlogsize | nombre | (optionnel) dernière taille du fichier journal des éléments de type journal | |
mtime | nombre | (optionnel) heure de modification des éléments de type journal | |
discovery data | tableau | (optionnel) tableau d'objets de données de découverte | |
clock | nombre | l'horodatage des données de découverte | |
druleid | nombre | id de la règle de découverte | |
dcheckid | nombre | id de vérification de découverte ou null pour les données de règle de découverte | |
type | nombre | le type de vérification de découverte : -1 données de règle de découverte 0, SVC_SSH - Vérification du service SSH 1, SVC_LDAP - Vérification du service LDAP 2, SVC_SMTP - Vérification du service SMTP 3, SVC_FTP - Vérification du service FTP 4, SVC_HTTP - Vérification du service HTTP 5, SVC_POP - Vérification du service POP 6, SVC_NNTP - Vérification du service NNTP 7, SVC_IMAP - Vérification du service IMAP 8, SVC_TCP - Vérification de la disponibilité du TCP 9, SVC_AGENT - Agent Zabbix 10, SVC_SNMPv1 - Agent SNMPv1 11, SVC_SNMPv2 - Agent SNMPv2 12, SVC_ICMPPING - Ping ICMP 13, SVC_SNMPv3 - Agent SNMPv3 14, SVC_HTTPS - Vérification du service HTTPS 15, SVC_TELNET - Vérification de la disponibilité de Telnet |
|
ip | chaîne | L'adresse IP de l'hôte | |
dns | chaîne | Le nom DNS de l'hôte | |
port | nombre | (optionnel) numéro de port du service | |
key_ | chaîne | (optionnel) la clé d'élément pour la vérification de découverte de type 9 SVC_AGENT | |
value | chaîne | (optionnel) valeur reçue du service, peut être vide pour la plupart des services | |
status | nombre | (optionnel) statut du service : 0, DOBJECT_STATUS_UP - Service UP 1, DOBJECT_STATUS_DOWN - Service DOWN |
|
auto registration | tableau | (optionnel) tableau d'objets de données d'enregistrement automatique | |
clock | nombre | l'horodatage des données d'enregistrement automatique | |
host | chaîne | le nom de l'hôte | |
ip | chaîne | (optionnel) L'adresse IP de l'hôte | |
dns | chaîne | (optionnel) le nom DNS résolu depuis l'adresse IP | |
port | chaîne | (optionnel) le port de l'hôte | |
host_metadata | chaîne | (optionnel) les métadonnées de l'hôte envoyées par l'agent (en fonction du paramètre de configuration de l'agent HostMetadata ou HostMetadataItem) | |
tasks | tableau | (optionnel) tableau de tâches | |
type | nombre | le type de tâche : 0, ZBX_TM_TASK_PROCESS_REMOTE_COMMAND_RESULT - résultat de la commande à distance |
|
status | nombre | le statut d'exécution de la commande à distance : 0, ZBX_TM_REMOTE_COMMAND_COMPLETED - commande à distance terminée avec succès 1, ZBX_TM_REMOTE_COMMAND_FAILED - commande à distance échouée |
|
error | chaîne | (optionnel) le message d'erreur | |
parent_taskid | nombre | l'id de la tâche parent | |
more | nombre | (optionnel) 1 - il y a plus de données d'historique à envoyer | |
clock | nombre | (optionnel) horodatage de transfert de données (secondes) | |
ns | nombre | (optionnel) horodatage de transfert de données (nanosecondes) | |
version | chaîne | la version du proxy (<majeure>.<mineure>.<build>) | |
serveur→proxy : | |||
response | chaîne | les informations de succès de la requête ('success' ou 'failed') | |
tasks | tableau | (optionnel) tableau de tâches | |
type | nombre | le type de tâche : 1, ZBX_TM_TASK_PROCESS_REMOTE_COMMAND - commande à distance |
|
clock | nombre | l'heure de création de la tâche | |
ttl | nombre | le temps en secondes après lequel la tâche expire | |
commandtype | nombre | le type de commande à distance : 0, ZBX_SCRIPT_TYPE_CUSTOM_SCRIPT - utilise un script personnalisé 1, ZBX_SCRIPT_TYPE_IPMI - utilise IPMI 2, ZBX_SCRIPT_TYPE_SSH - utilise SSH 3, ZBX_SCRIPT_TYPE_TELNET - utilise Telnet 4, ZBX_SCRIPT_TYPE_GLOBAL_SCRIPT - utilise un script global (actuellement équivalent au script personnalisé) |
|
command | chaîne | la commande à distance à exécuter | |
execute_on | nombre | la cible d'exécution pour les scripts personnalisés : 0, ZBX_SCRIPT_EXECUTE_ON_AGENT - exécute le script sur l'agent 1, ZBX_SCRIPT_EXECUTE_ON_SERVER - exécute le script sur le server 2, ZBX_SCRIPT_EXECUTE_ON_PROXY - exécute le script sur le proxy |
|
port | nombre | (optionnel) le port pour les commandes telnet et SSH | |
authtype | nombre | (optionnel) le type d'authentification pour les commandes telnet et SSH | |
username | chaîne | (optionnel) le nom d'utilisateur pour les commandes telnet et SSH | |
password | chaîne | (optionnel) le mot de passe pour les commandes telnet et SSH | |
publickey | chaîne | (optionnel) la clé publique pour les commandes SSH | |
privatekey | chaîne | (optionnel) la clé privée pour les commandes SSH | |
parent_taskid | nombre | l'id de la tâche parent | |
hostid | nombre | l'id de l'hôte cible |
Exemple :
serveur→proxy :
proxy→serveur :
{
"session": "12345678901234567890123456789012"
"host availability":[
{
"hostid":10106,
"disponible":1,
"error":"",
"snmp_disponible":0,
"snmp_error":"",
"ipmi_disponible":0,
"ipmi_error":"",
"jmx_disponible":0,
"jmx_error":""
},
{
"hostid":10107,
"disponible":1,
"error":"",
"snmp_disponible":0,
"snmp_error":"",
"ipmi_disponible":0,
"ipmi_error":"",
"jmx_disponible":0,
"jmx_error":""
}
],
"history data":[
{
"itemid":"12345",
"clock":1478609647,
"ns":332510044,
"value":"52956612",
"id": 1
},
{
"itemid":"12346",
"clock":1478609647,
"ns":330690279,
"state":1,
"value":"Cannot find information for this network interface in /proc/net/dev.",
"id": 2
}
],
"discovery data":[
{
"clock":1478608764,
"drule":2,
"dcheck":3,
"type":12,
"ip":"10.3.0.10",
"dns":"vdebian",
"status":1
},
{
"clock":1478608764,
"drule":2,
"dcheck":null,
"type":-1,
"ip":"10.3.0.10",
"dns":"vdebian",
"status":1
}
],
"auto registration":[
{
"clock":1478608371,
"host":"Logger1",
"ip":"10.3.0.1",
"dns":"localhost",
"port":"10050"
},
{
"clock":1478608381,
"host":"Logger2",
"ip":"10.3.0.2",
"dns":"localhost",
"port":"10050"
}
],
"tasks":[
{
"type": 0,
"status": 0,
"parent_taskid": 10
},
{
"type": 0,
"status": 1,
"error": "No permissions to execute task.",
"parent_taskid": 20
}
],
"version":"3.4.0"
}
serveur→proxy :
{
"response": "success",
"tasks":[
{
"type": 1,
"clock": 1478608371,
"ttl": 600,
"commandtype": 2,
"command": "restart_service1.sh",
"execute_on": 2,
"port": 80,
"authtype": 0,
"username": "userA",
"password": "password1",
"publickey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqGKukO1De7zhZj6+H0qtjTkVxwTCpvKe",
"privatekey": "lsuusFncCzWBQ7RKNUSesmQRMSGkVb1/3j+skZ6UtW+5u09lHNsj6tQ5QCqGKukO1De7zhd",
"parent_taskid": 10,
"hostid": 10070
},
{
"type": 1,
"clock": 1478608381,
"ttl": 600,
"commandtype": 1,
"command": "restart_service2.sh",
"execute_on": 0,
"authtype": 0,
"username": "",
"password": "",
"publickey": "",
"privatekey": "",
"parent_taskid": 20,
"hostid": 10084
}
]
}
La requête proxy heartbeat
est envoyée par le proxy pour signaler que le proxy est en cours d'exécution. Cette requête est envoyée tous les HeartbeatFrequency
(paramètre de configuration au niveau du proxy) secondes.
nom | type de valeur | description | |
---|---|---|---|
proxy→serveur : | |||
request | chaîne | 'proxy heartbeat' | |
host | chaîne | type de valeur | |
version | chaîne | la version du proxy (<majeure>.<mineure>.<build>) | |
serveur→proxy : | |||
response | chaîne | les informations de succès de la requête ('success' ou 'failed') |
proxy→serveur :
serveur→proxy :
La requête proxy config
est envoyée par le proxy pour obtenir les données de configuration du proxy. Cette requête est envoyée tous les ConfigFrequency
(paramètre de configuration au niveau du proxy) secondes.
nom | type de valeur | description | |||
---|---|---|---|---|---|
proxy→serveur : | |||||
request | chaîne | 'proxy config' | |||
host | chaîne | proxy name | |||
version | chaîne | the proxy version (<major>.<minor>.<build>) | |||
serveur→proxy : | |||||
request | chaîne | 'proxy config' | |||
<table> | objet | un ou plusieurs objets avec des données <table> | |||
fields | tableau | tableau des noms de champs | |||
- | chaîne | nom du champs | |||
data | tableau | tableau de lignes | |||
- | tableau | tableau de colonnes | |||
- | chaîne,nombre | valeur de la colonne dont le type dépend du type de colonne dans le schéma de base de données | |||
proxy→serveur : | |||||
response | chaîne | les informations de succès de la requête ('success' ou 'failed') |
Exemple :
proxy→serveur :
serveur→proxy :
{
"globalmacro":{
"fields":[
"globalmacroid",
"macro",
"value"
],
"data":[
[
2,
"{$SNMP_COMMUNITY}",
"public"
]
]
},
"hosts":{
"fields":[
"hostid",
"host",
"status",
"ipmi_authtype",
"ipmi_privilege",
"ipmi_username",
"ipmi_password",
"name",
"tls_connect",
"tls_accept",
"tls_issuer",
"tls_subject",
"tls_psk_identity",
"tls_psk"
],
"data":[
[
10001,
"Template OS Linux",
3,
-1,
2,
"",
"",
"Template OS Linux",
1,
1,
"",
"",
"",
""
],
[
10050,
"Template App Zabbix Agent",
3,
-1,
2,
"",
"",
"Template App Zabbix Agent",
1,
1,
"",
"",
"",
""
],
[
10105,
"Logger",
0,
-1,
2,
"",
"",
"Logger",
1,
1,
"",
"",
"",
""
]
]
},
"interface":{
"fields":[
"interfaceid",
"hostid",
"main",
"type",
"useip",
"ip",
"dns",
"port",
"bulk"
],
"data":[
[
2,
10105,
1,
1,
1,
"127.0.0.1",
"",
"10050",
1
]
]
},
...
}
proxy→serveur :
La requête proxy data
est envoyée par le proxy pour fournir la disponibilité d'un hôte, les données d'historique, de découverte et d'enregistrement automatique. Cette requête est envoyée toutes les DataSenderFrequency
(paramètre de configuration au niveau du proxy) secondes.
nom | type de valeur | description | |
---|---|---|---|
proxy→serveur : | |||
request | chaîne | 'proxy data' | |
host | chaîne | le nom du proxy | |
session | chaîne | jeton de données de session | |
host availability | tableau | (optionnel) tableau d'objets de données de disponibilité d'hôte | |
hostid | nombre | id de l'hôte | |
disponible | nombre | disponibilité de l'agent Zabbix 0, HOST_AVAILABLE_UNKNOWN - inconnu 1, HOST_AVAILABLE_TRUE - disponible 2, HOST_AVAILABLE_FALSE - indisponible |
|
error | chaîne | message d'erreur de l'agent Zabbix ou chaîne vide | |
snmp_disponible | nombre | disponibilité de l'agent SNMP 0, HOST_AVAILABLE_UNKNOWN - inconnu 1, HOST_AVAILABLE_TRUE - disponible 2, HOST_AVAILABLE_FALSE - indisponible |
|
snmp_error | chaîne | message d'erreur de l'agent SNMP ou chaîne vide | |
ipmi_disponible | nombre | disponibilité de l'agent IPMI 0, HOST_AVAILABLE_UNKNOWN - inconnu 1, HOST_AVAILABLE_TRUE - disponible 2, HOST_AVAILABLE_FALSE - indisponible |
|
ipmi_error | chaîne | message d'erreur de l'agent IPMI ou chaîne vide | |
jmx_disponible | nombre | disponibilité de l'agent JMX 0, HOST_AVAILABLE_UNKNOWN - inconnu 1, HOST_AVAILABLE_TRUE - disponible 2, HOST_AVAILABLE_FALSE - indisponible |
|
jmx_error | chaîne | message d'erreur de l'agent JMX ou chaîne vide | |
history data | tableau | (optionnel) tableau d'objets de données d'historique | |
itemid | nombre | id de l'élément | |
clock | nombre | horodatage de la valeur de l'élément (secondes) | |
ns | nombre | horodatage de la valeur de l'élément (nanosecondes) | |
value | chaîne | (optionnel) valeur de l'élément | |
id | nombre | id de la valeur (compteur croissant, unique dans une session de données) | |
timestamp | nombre | (optionnel) horodatage des éléments de type journal | |
source | chaîne | (optionnel) valeur de la source de l'élément eventlog | |
severity | nombre | (optionnel) valeur de la sévérité de l'élément eventlog | |
eventid | nombre | (optionnel) valeur de l'id de l'événement de l'élément eventlog | |
state | chaîne | (optionnel) état de l'élément 0, ITEM_STATE_NORMAL 1, ITEM_STATE_NOTSUPPORTED |
|
lastlogsize | nombre | (optionnel) dernière taille du journal pour les éléments de type journal | |
mtime | nombre | (optionnel) heure de modification des éléments de type journal | |
discovery data | tableau | (optionnel) tableau d'objet de données de découverte | |
clock | nombre | horodatage des données de découverte | |
druleid | nombre | id de la règle de découverte | |
dcheckid | nombre | l'id de la vérification de découverte ou null pour les données de règle de découverte | |
type | nombre | le type de vérification de découverte : -1 données de règle de découverte 0, SVC_SSH - vérification du service SSH 1, SVC_LDAP - vérification du service LDAP 2, SVC_SMTP - vérification du service SMTP 3, SVC_FTP - vérification du service FTP 4, SVC_HTTP - vérification du service HTTP 5, SVC_POP - vérification du service POP 6, SVC_NNTP - vérification du service NTP 7, SVC_IMAP - vérification du service IMAP 8, SVC_TCP - vérification de la disponibilité du port TCP 9, SVC_AGENT - agent Zabbix 10, SVC_SNMPv1 - agent SNMPv1 11, SVC_SNMPv2 - agent SNMPv2 12, SVC_ICMPPING - ping ICMP 13, SVC_SNMPv3 - agent SNMPv3 14, SVC_HTTPS - vérification du service HTTPS 15, SVC_TELNET - vérification disponibilité de Telnet |
|
ip | chaîne | l'adresse IP de l'hôte | |
dns | chaîne | le nom DNS de l'hôte | |
port | nombre | (optionnel) numéro du port du service | |
key_ | chaîne | (optionnel) la clé d'élément pour les vérifications de découverte de type 9 SVC_AGENT | |
value | chaîne | (optionnel) valeur reçue du service, peut être vide pour la plupart des services | |
auto registration | tableau | (optionnel) tableau d'objets de données d'enregistrement automatique | |
status | nombre | (optionnel) statut du service : 0, DOBJECT_STATUS_UP - Service UP 1, DOBJECT_STATUS_DOWN - Service DOWN |
|
clock | nombre | horodatage des données d'enregistrement automatique | |
host | chaîne | nom de l'hôte | |
ip | chaîne | (optionnel) l'adresse IP de l'hôte | |
dns | chaîne | (optionnel) le nom DNS résolu depuis l'adresse IP | |
port | chaîne | (optionnel) le port de l'hôte | |
host_metadata | chaîne | (optionnel) les metadatas de l'hôte envoyées par l'agent (basées sur les paramètres de configuration de l'agent HostMetadata ou HostMetadataItem) | |
tasks | tableau | (optionnel) tableau de tâches | |
type | nombre | le type de tâche : 0, ZBX_TM_TASK_PROCESS_REMOTE_COMMAND_RESULT - résultat de la commande à distance |
|
status | nombre | le statut d'exécution de la commande à distance : 0, ZBX_TM_REMOTE_COMMAND_COMPLETED - commande à distance exécutée avec succès 1, ZBX_TM_REMOTE_COMMAND_FAILED - commande à distance échouée |
|
error | chaîne | (optionnel) le message d'erreur | |
parent_taskid | nombre | l'id de la tâche parent | |
more | nombre | (optionnel) 1 - il y a plus de données d'historique à envoyer | |
clock | nombre | (optionnel) horodatage des données de transfert (secondes) | |
ns | nombre | (optionnel) horodatage des données de transfert (nanosecondes) | |
version | chaîne | la version du proxy (<majeure>.<mineure>.<build>) | |
serveur→proxy : | |||
response | chaîne | les informations de succès de la requête ('success' ou 'failed') | |
tasks | tableau | (optionnel) tableau de tâches | |
type | nombre | le type de tâche : 1, ZBX_TM_TASK_PROCESS_REMOTE_COMMAND - commande à distance |
|
clock | nombre | l'heure de création de la tâche | |
ttl | nombre | le temps en secondes après lequel la tâche expire | |
commandtype | nombre | le type de commande à distance : 0, ZBX_SCRIPT_TYPE_CUSTOM_SCRIPT - utilise un script personnalisé 1, ZBX_SCRIPT_TYPE_IPMI - utilise IPMI 2, ZBX_SCRIPT_TYPE_SSH - utilise SSH 3, ZBX_SCRIPT_TYPE_TELNET - utilise Telnet 4, ZBX_SCRIPT_TYPE_GLOBAL_SCRIPT - utilise un script global (actuellement équivalent au script personnalisé) |
|
command | chaîne | la commande à distance à exécuter | |
execute_on | nombre | la cible d'exécution pour les scripts personnalisés : 0, ZBX_SCRIPT_EXECUTE_ON_AGENT - exécute le script sur l'agent 1, ZBX_SCRIPT_EXECUTE_ON_SERVER - exécute le script sur le server 2, ZBX_SCRIPT_EXECUTE_ON_PROXY - exécute le script sur le proxy |
|
port | nombre | (optionnel) le port pour les commandes telnet et SSH | |
authtype | nombre | (optionnel) le type d'authentication pour les commandes SSH | |
username | chaîne | (optionnel) le nom d'utilisateur pour les commandes telnet et SSH | |
password | chaîne | (optionnel) le mot de passe pour les commandes telnet et SSH | |
publickey | chaîne | (optionnel) la clé publique pour les commandes SSH | |
privatekey | chaîne | (optionnel) la clé privée pour les commandes SSH | |
parent_taskid | nombre | l'id de la tâche parent | |
hostid | nombre | l'id de hôte cible |
Exemple :
proxy→serveur :
{
"request": "proxy data",
"host": "Proxy #12",
"session": "12345678901234567890123456789012",
"host availability":[
{
"hostid":10106,
"disponible":1,
"error":"",
"snmp_disponible":0,
"snmp_error":"",
"ipmi_disponible":0,
"ipmi_error":"",
"jmx_disponible":0,
"jmx_error":""
},
{
"hostid":10107,
"disponible":1,
"error":"",
"snmp_disponible":0,
"snmp_error":"",
"ipmi_disponible":0,
"ipmi_error":"",
"jmx_disponible":0,
"jmx_error":""
}
],
"history data":[
{
"itemid":"12345",
"clock":1478609647,
"ns":332510044,
"value":"52956612",
"id": 1
},
{
"itemid":"12346",
"clock":1478609647,
"ns":330690279,
"state":1,
"value":"Cannot find information for this network interface in /proc/net/dev.",
"id": 2
}
],
"discovery data":[
{
"clock":1478608764,
"drule":2,
"dcheck":3,
"type":12,
"ip":"10.3.0.10",
"dns":"vdebian",
"status":1
},
{
"clock":1478608764,
"drule":2,
"dcheck":null,
"type":-1,
"ip":"10.3.0.10",
"dns":"vdebian",
"status":1
}
],
"auto registration":[
{
"clock":1478608371,
"host":"Logger1",
"ip":"10.3.0.1",
"dns":"localhost",
"port":"10050"
},
{
"clock":1478608381,
"host":"Logger2",
"ip":"10.3.0.2",
"dns":"localhost",
"port":"10050"
}
],
"tasks":[
{
"type": 2,
"clock":1478608371,
"ttl": 600,
"commandtype": 2,
"command": "restart_service1.sh",
"execute_on": 2,
"port": 80,
"authtype": 0,
"username": "userA",
"password": "password1",
"publickey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqGKukO1De7zhZj6+H0qtjTkVxwTCpvKe",
"privatekey": "lsuusFncCzWBQ7RKNUSesmQRMSGkVb1/3j+skZ6UtW+5u09lHNsj6tQ5QCqGKukO1De7zhd",
"parent_taskid": 10,
"hostid": 10070
},
{
"type": 2,
"clock":1478608381,
"ttl": 600,
"commandtype": 1,
"command": "restart_service2.sh",
"execute_on": 0,
"authtype": 0,
"username": "",
"password": "",
"publickey": "",
"privatekey": "",
"parent_taskid": 20,
"hostid": 10084
}
],
"tasks":[
{
"type": 0,
"status": 0,
"parent_taskid": 10
},
{
"type": 0,
"status": 1,
"error": "No permissions to execute task.",
"parent_taskid": 20
}
],
"version":"3.4.0"
}
serveur→proxy :
{
"response": "success",
"tasks":[
{
"type": 1,
"clock": 1478608371,
"ttl": 600,
"commandtype": 2,
"command": "restart_service1.sh",
"execute_on": 2,
"port": 80,
"authtype": 0,
"username": "userA",
"password": "password1",
"publickey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqGKukO1De7zhZj6+H0qtjTkVxwTCpvKe",
"privatekey": "lsuusFncCzWBQ7RKNUSesmQRMSGkVb1/3j+skZ6UtW+5u09lHNsj6tQ5QCqGKukO1De7zhd",
"parent_taskid": 10,
"hostid": 10070
},
{
"type": 1,
"clock": 1478608381,
"ttl": 600,
"commandtype": 1,
"command": "restart_service2.sh",
"execute_on": 0,
"authtype": 0,
"username": "",
"password": "",
"publickey": "",
"privatekey": "",
"parent_taskid": 20,
"hostid": 10084
}
]
}
Le serveur prend en charge la compatibilité avec les versions antérieures en acceptant les anciennes requêtes nommées host availability
, history data
, discovery data
et auto registration
.