1 Protocol de bescanvi de dades servidor-proxy

Vista general

El bescanvi de dades servidor - proxy es basa en el format JSON.

Els missatges de petició de resposta han de començar amb una capçalera i longitud de les dades.

Proxy passiu

Petició de configuració del proxy

La petició proxy config s'envia per el servidor per proveir les dades de configuració del proxy. Aquesta petició s'envia cada ProxyConfigFrequency (paràmetre de configuració del servidor) segons.

El proxy respon amb la versió actual del proxy, el testimoni de sessió i la revisió de la configuració. El servidor respon amb les dades de configuració que cal actualitzar.

nom tipus de valor descripció
server→proxy:
request string 'proxy config'
proxy→server:
version string
session string
config_revision number
server→proxy:
full_sync number
data array
<table> object Un o més objectes amb dades de la <taula> (opcional, depenent dels canvis).
fields array Matriu de noms de camps.
- string Nom del camp.
data array Matriu de fileres.
- array Matriu de columnes.
- string,number Valor de columna amb tipus en funció del tipus de columna a l'esquema de la base de dades.
macro.secrets object
config_revision number
del_hostids array
- number
del_macro_hostids array
- number
proxy→server:
response string Petició d'informació ('èxit' o 'error').
version string Versió del proxy (<major>.<minor>.<build>).

Exemple:

server→proxy:

server→proxy:

{
         "request":"proxy config"
       } 

proxy→server:

{
         "version": "7.0.0",
         "session": "0033124949800811e5686dbfd9bcea98",
         "config_revision": 0
       }

server→proxy:

{
           "full_sync": 1,
           "data": {
               "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": [
                       [10084, "Zabbix server", 0, -1, 2, "", "", "Zabbix server", 1, 1, "", "", "", ""]
                   ]
               },
               "interface": {
                   "fields": ["interfaceid", "hostid", "main", "type", "useip", "ip", "dns", "port", "available"],
                   "data": [
                       [1, 10084, 1, 1, 1, "127.0.0.1", "", "10053", 1]
                   ]
               },
               "interface_snmp": {
                   "fields": ["interfaceid", "version", "bulk", "community", "securityname", "securitylevel", "authpassphrase", "privpassphrase", "authprotocol", "privprotocol", "contextname"],
                   "data": []
               },
               "host_inventory": {
                   "fields": ["hostid", "type", "type_full", "name", "alias", "os", "os_full", "os_short", "serialno_a", "serialno_b", "tag", "asset_tag", "macaddress_a", "macaddress_b", "hardware", "hardware_full", "software", "software_full", "software_app_a", "software_app_b", "software_app_c", "software_app_d", "software_app_e", "contact", "location", "location_lat", "location_lon", "notes", "chassis", "model", "hw_arch", "vendor", "contract_number", "installer_name", "deployment_status", "url_a", "url_b", "url_c", "host_networks", "host_netmask", "host_router", "oob_ip", "oob_netmask", "oob_router", "date_hw_purchase", "date_hw_install", "date_hw_expiry", "date_hw_decomm", "site_address_a", "site_address_b", "site_address_c", "site_city", "site_state", "site_country", "site_zip", "site_rack", "site_notes", "poc_1_name", "poc_1_email", "poc_1_phone_a", "poc_1_phone_b", "poc_1_cell", "poc_1_screen", "poc_1_notes", "poc_2_name", "poc_2_email", "poc_2_phone_a", "poc_2_phone_b", "poc_2_cell", "poc_2_screen", "poc_2_notes"],
                   "data": [
                       [10084, "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "56.95387", "24.22067", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""]
                   ]
               },
               "items": {
                   "fields": ["itemid", "type", "snmp_oid", "hostid", "key_", "delay", "history", "status", "value_type", "trapper_hosts", "logtimefmt", "params", "ipmi_sensor", "authtype", "username", "password", "publickey", "privatekey", "flags", "interfaceid", "inventory_link", "jmx_endpoint", "master_itemid", "timeout", "url", "query_fields", "posts", "status_codes", "follow_redirects", "post_type", "http_proxy", "headers", "retrieve_mode", "request_method", "output_format", "ssl_cert_file", "ssl_key_file", "ssl_key_password", "verify_peer", "verify_host", "allow_traps"],
                   "data": [
                       [44161, 7, "", 10084, "agent.hostmetadata", "10s", "90d", 0, 1, "", "", "", "", 0, "", "", "", "", 0, null, 0, "", null, "3s", "", "", "", "200", 1, 0, "", "", 0, 0, 0, "", "", "", 0, 0, 0],
                       [44162, 0, "", 10084, "agent.ping", "10s", "90d", 0, 3, "", "", "", "", 0, "", "", "", "", 0, 1, 0, "", null, "3s", "", "", "", "200", 1, 0, "", "", 0, 0, 0, "", "", "", 0, 0, 0]
                   ]
               },
               "item_rtdata": {
                   "fields": ["itemid", "lastlogsize", "mtime"],
                   "data": [
                       [44161, 0, 0],
                       [44162, 0, 0]
                   ]
               },
               "item_preproc": {
                   "fields": ["item_preprocid", "itemid", "step", "type", "params", "error_handler", "error_handler_params"],
                   "data": []
               },
               "item_parameter": {
                   "fields": ["item_parameterid", "itemid", "name", "value"],
                   "data": []
               },
               "globalmacro": {
                   "fields": ["globalmacroid", "macro", "value", "type"],
                   "data": [
                       [2, "{$SNMP_COMMUNITY}", "public", 0]
                   ]
               },
               "hosts_templates": {
                   "fields": ["hosttemplateid", "hostid", "templateid", "link_type"],
                   "data": []
               },
               "hostmacro": {
                   "fields": ["hostmacroid", "hostid", "macro", "value", "type", "automatic"],
                   "data": [
                       [5676, 10084, "{$M}", "AppID=zabbix_server&Query=Safe=passwordSafe;Object=zabbix:Content", 2, 0]
                   ]
               },
               "drules": {
                   "fields": ["druleid", "name", "iprange", "delay"],
                   "data": [
                       [2, "Local network", "127.0.0.1", "10s"]
                   ]
               },
               "dchecks": {
                   "fields": ["dcheckid", "druleid", "type", "key_", "snmp_community", "ports", "snmpv3_securityname", "snmpv3_securitylevel", "snmpv3_authpassphrase", "snmpv3_privpassphrase", "uniq", "snmpv3_authprotocol", "snmpv3_privprotocol", "snmpv3_contextname", "host_source", "name_source"],
                   "data": [
                       [2, 2, 9, "system.uname", "", "10052", "", 0, "", "", 0, 0, 0, "", 1, 0]
                   ]
               },
               "regexps": {
                   "fields": ["regexpid", "name"],
                   "data": [
                       [1, "File systems for discovery"],
                       [2, "Network interfaces for discovery"],
                       [3, "Storage devices for SNMP discovery"],
                       [4, "Windows service names for discovery"],
                       [5, "Windows service startup states for discovery"]
                   ]
               },
               "expressions": {
                   "fields": ["expressionid", "regexpid", "expression", "expression_type", "exp_delimiter", "case_sensitive"],
                   "data": [
                       [1, 1, "^(btrfs|ext2|ext3|ext4|reiser|xfs|ffs|ufs|jfs|jfs2|vxfs|hfs|apfs|refs|ntfs|fat32|zfs)$", 3, ",", 0],
                       [3, 3, "^(Physical memory|Virtual memory|Memory buffers|Cached memory|Swap space)$", 4, ",", 1],
                       [5, 4, "^(MMCSS|gupdate|SysmonLog|clr_optimization_v2.0.50727_32|clr_optimization_v4.0.30319_32)$", 4, ",", 1],
                       [6, 5, "^(automatic|automatic delayed)$", 3, ",", 1],
                       [7, 2, "^Software Loopback Interface", 4, ",", 1],
                       [8, 2, "^(In)?[Ll]oop[Bb]ack[0-9._]*$", 4, ",", 1],
                       [9, 2, "^NULL[0-9.]*$", 4, ",", 1],
                       [10, 2, "^[Ll]o[0-9.]*$", 4, ",", 1],
                       [11, 2, "^[Ss]ystem$", 4, ",", 1],
                       [12, 2, "^Nu[0-9.]*$", 4, ",", 1]
                   ]
               },
               "config": {
                   "fields": ["configid", "snmptrap_logging", "hk_history_global", "hk_history", "autoreg_tls_accept"],
                   "data": [
                       [1, 1, 0, "90d", 1]
                   ]
               },
               "httptest": {
                   "fields": ["httptestid", "name", "delay", "agent", "authentication", "http_user", "http_password", "hostid", "http_proxy", "retries", "ssl_cert_file", "ssl_key_file", "ssl_key_password", "verify_peer", "verify_host"],
                   "data": []
               },
               "httptestitem": {
                   "fields": ["httptestitemid", "httptestid", "itemid", "type"],
                   "data": []
               },
               "httptest_field": {
                   "fields": ["httptest_fieldid", "httptestid", "type", "name", "value"],
                   "data": []
               },
               "httpstep": {
                   "fields": ["httpstepid", "httptestid", "name", "no", "url", "timeout", "posts", "required", "status_codes", "follow_redirects", "retrieve_mode", "post_type"],
                   "data": []
               },
               "httpstepitem": {
                   "fields": ["httpstepitemid", "httpstepid", "itemid", "type"],
                   "data": []
               },
               "httpstep_field": {
                   "fields": ["httpstep_fieldid", "httpstepid", "type", "name", "value"],
                   "data": []
               },
               "config_autoreg_tls": {
                   "fields": ["autoreg_tlsid", "tls_psk_identity", "tls_psk"],
                   "data": [
                       [1, "", ""]
                   ]
               }
           },
           "macro.secrets": {
               "AppID=zabbix_server&Query=Safe=passwordSafe;Object=zabbix": {
                   "Content": "738"
               }
           },
           "config_revision": 2
       }

proxy→server:

{
         "response": "success",
         "version": "7.0.0"
       }
Petició del proxy

La petició de proxy data s'empra per obtindre dades de disponibilitat de la interfície d'equip, dades històriques, de descobriment i registre automàtic del proxy. Aquesta petició s'envia cada ProxyDataFrequency segons (paràmetre de configuració del servidor).

|nom|<|tipus de valor|descripció| |-|-----------|-----------|--------------------------- ----------------| |server→proxy:|<|<|<| |request|<|string|'informació del proxy'| |proxy→server:|<|<|<| |session|<|string|Fitxa de sessió de dades.| |interface availability|<|array|(opcional) Matriu d'objectes de dades de disponibilitat de la interfície.| | |interfaceid|number|Identificador de la interfície.| |^|available|number|Disponibilitat de la interfície:

0, INTERFACE_AVAILABLE- desconegut
1,
INTERFACE_AVAILABLE _TRUE* - disponible
2, INTERFACE_AVAILABLE_FALSE - no disponible| |^|error|string|Missatge d'error de la interfície o cadena buida.| |history data|<|array|(opcional) Matriu d'objectes de dades de l'historial.| | |itemid|number|Identificador de l'element.| |^|clock|number|Marca de temps del valor de l'element (segons).| |^|ns|number|Marca de temps del valor de l'element (nanosegons).| |^|value|string|(opcional) Valor de l'element.| |^|id|number|Identificador del valor (comptador ascendent, únic en una sessió de dades).| |^|timestamp|number|(opcional) Marca de temps dels elements del tipus de registre.| |^|source|string|(opcional) Valor font de l'element del registre d'esdeveniments.| |^|severity|number|(opcional) Valor de gravetat de l'element del registre d'esdeveniments.| |^|eventid|number|(opcional) Valor d'event de l'element del registre d'esdeveniments.| |^|status|string|(opcional) Estat de l'element:
0, ITEM_STATE_NORMAL
1, ITEM_STATE _NO SUPORT| |^|lastlogsize|number|(opcional) Mida del darrer registre dels elements del tipus de registre.| |^|mtime|number|(opcional) Hora de modificació dels elements del tipus de registre.| |discovery data|<|array|(opcional) Matriu d'objectes de dades de descoberta.| | |clock|number|Marca de temps de les dades de descoberta.| |^|druleid|number|Identificador de la regla de descoberta.| |^|dcheckid|number|Identificador de comprovació de descoberta o res per a les dades de la regla de descoberta.| |^|type|number|Tipus de comprovació de descoberta:

-1 dades de la regla de descoberta
0, SVC_SSH - Comprovació del servei SSH
1, SVC_LDAP - Comprovació del servei LDAP
2, SVC_SMTP - Comprovació del servei SMTP
3, SVC_FTP - Comprovació del servei FTP
4, SVC_HTTP - Comprovació del servei HTTP
5, SVC_POP - Comprovació del servei POP
6, * SVC_NNTP* - Comprovació del servei NNTP
7, SVC_IMAP - Comprovació del servei IMAP
8, SVC_TCP - Comprovació de la disponibilitat del 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 - Comprovació del servei HTTPS<br >15, SVC_TELNET - Comprovació de disponibilitat de Telnet| |^|ip|string|Adreça IP de l'equip.| |^|dns|string|Nom DNS de l'equip.| |^|port|number|(opcional) Nombre de port de servei.| |^|key_|string|(opcional) Clau d'element per a la comprovació de descoberta de tipus 9 SVC_AGENT| |^|value|string|(opcional) Valor rebut del servei, pot estar buit per a la majoria de serveis.| |^|status|number|(opcional) Estat del servei:

0, DOBJECT_STATUS_UP - Servei UP
1
, DOBJECT_STATUS_DOWN* - Servei DOWN| |
auto registration|<|array|(opcional) Matriu d'objectes de dades de registre automàtic.| | |clock|number|Marca de temps de dades de registre automàtic.| |^|host|string|Nom de l'equip.| |^|ip|string|(opcional) Adreça IP de l'equip.| |^|dns|string|(opcional) S'ha resolt el nom DNS des de l'adreça IP.| |^|port|string|(opcional) Port de l'equip.| |^|host_metadata|string|(opcional) Metadades de l'equip enviades per l'agent (basades en el paràmetre de configuració de l'agent HostMetadata o HostMetadataItem).| |tasks|<|array|(opcional) Matriu de tasques.| | |type|number|Tipus de tasca:

0, ZBX_TM_TASK_PROCESS_REMOTE_COMMAND_RESULT - resultat de la comanda remota| |^|status|number|Estat d'execució de l'ordre remota:

0, ZBX_TM_REMOTE_COMMAND_COMPLETED: l'ordre remota s'ha completat correctament
1, ZBX_TM_REMOTE_COMMAND_FAILED - l'ordre remota ha fallat| |^|error|string|(opcional) Missatge d'error.| |^|parent_taskid|number|ID de la tasca principal.| |more|<|number|(opcional) 1 - hi ha més dades de l'historial per enviar.| |clock|<|number|(opcional) Marca de temps de transferència de dades (segons).| |ns|<|number|(opcional) Marca de temps de transferència de dades (nanosegons).| |version|<|string|Versió del proxy (<major>.<menor>.<build>).| |server→proxy:|<|<|<| |response|<|string|Demanar informació sobre l'èxit ('èxit' o 'error').| |tasks|<|array|(opcional) Matriu de tasques.| | |type|number|Tipus de tasca:

1, ZBX_TM_TASK_PROCESS_REMOTE_COMMAND - comanda remota| |^|clock|number|Hora de creació de la tasca.| |^|ttl|number|Temps en segons després del qual caduca la tasca.| |^|commandtype|number|Tipus de comanda remota:

0, ZBX_SCRIPT_TYPE_CUSTOM_SCRIPT: empreu un script personalitzat
1, ZBX_SCRIPT_TYPE_IPMI - emprar IPMI
2, ZBX_SCRIPT_TYPE_SSH - emprar SSH
3, ZBX_SCRIPT _TYPE_TELNET: empra Telnet
4, ZBX_SCRIPT_TYPE_GLOBAL_SCRIPT: empra un script lobal (actualment equivalent funcionalment a script personalitzat)| |^|command|string|Ordre remota per executar.| |^|execute_on|number|Destí d'execució per a scripts personalitzats:

0, ZBX_SCRIPT_EXECUTE_ON_AGENT - executa l'script a l'agent< br>1, ZBX_SCRIPT_EXECUTE_ON_SERVER - executa l'script al servidor
2, ZBX_SCRIPT_EXECUTE_ON_PROXY - executa l'script al proxy| |^|port|number|(opcional) Port per a ordres Telnet i SSH.| |^|authtype|number|(opcional) Tipus d'autenticació per a ordres SSH.| |^|username|string|(opcional) Nom d'usuari per a ordres Telnet i SSH.| |^|password|string|(opcional) Mot de pas per a ordres Telnet i SSH.| |^|publickey|string|(opcional) Clau pública per a ordres SSH.| |^|privatekey|string|(opcional) Clau privada per a ordres SSH.| |^|parent_taskid|number|ID de la tasca principal.| |^|hostid**|number|ID de l'equip objectiu.|

Exemple:

server→proxy:

{
         "request": "proxy data"
       }

proxy→server:

{
           "session": "12345678901234567890123456789012"
           "interface availability": [
               {
                   "interfaceid": 1,
                   "available": 1,
                   "error": ""
           },
               {
                   "interfaceid": 2,
                   "available": 2,
                   "error": "Get value from agent failed: cannot connect to [[127.0.0.1]:10049]: [111] Connection refused"
           },
               {
                   "interfaceid": 3,
                   "available": 1,
                   "error": ""
           },
               {
                   "interfaceid": 4,
                   "available": 1,
                   "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":"7.0.0"
       }

server→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
             }
         ]
       }

Proxy actiu

Petició de configuració proxy

La petició proxy config és enviada per el proxy per obtindre les dades de configuració del proxy. Aquesta petició s'envia cada ConfigFrequency segons (paràmetre de configuració del proxy).

|nom|<|<|<|tipus de valor|descripció| |-|-|-|----------|----------|--------------------- -------------------| |proxy→server:|<|<|<|<|<| |request|<|<|<|string|'proxy config'| |host|<|<|<|string|Nom del proxy.| |version|<|<|<|string|Versió del proxy (<major>.<menor>.<build>).| | session | <| <| <| <| string | Token de sessió de la configuració del proxy. | | config_revision | <| <| <| <| number | Revisió de la configuració del proxy. | | | < | < | < | < | < | < | |server→proxy:|<|<|<|<|<| | fullsync | <| <| <| <| number | 1 - si s'envia informació de tota la configuració, absent altrament (opcional). | | data | <| <| <| <| array | Objecte d'informació de taula. Absent si la configuració no s'ha canviat (opcional). | ||<table>|<|<|<|object|Un o diversos objectes amb les dades <taula> (opcional, depenent dels canvis).| | ^||fields|<|<|array|Taula de noms dels camps.| | || |-|<|string|Nom del camp.| | ||data|<|<|array|Taula de línies.| | || |-|<|array|Taula de columnes.| | ||^| |-|string,number|Valor de columna d'on depèn el tipus del tipus de columna a l'esquema de la base de dades.| || <| <| <| <| <| <| | macro.secrets | <| <| <| <| object | Informació de la macro secreta, absent si no hi ha canvis a les macros de vault (opcional). | | config_revision | <| <| <| <| number | Revisió de la configuració de la cau - enviat amb dades de configuració (opcional). | | del_hostids | <| <| <| <| array | Matriu amb els hostids esborrats (opcional). | || -| <| <| <| number | Identificador d'equip. | | del_macro_hostids | <| <| <| <| array | Matriu de hostids amb totes les macros esborrades (opcional). | || -| <| <| <| number | Identificador d'equip. |

Exemple:

proxy→server:

{
         "request": "proxy config",
         "host": "Zabbix proxy",
         "version":"7.0.0",
         "session": "fd59a09ff4e9d1fb447de1f04599bcf6",
         "config_revision": 0
       }

server→proxy:

{
           "full_sync": 1,
           "data": {
               "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": [
                       [10084, "Zabbix server", 0, -1, 2, "", "", "Zabbix server", 1, 1, "", "", "", ""]
                   ]
               },
               "interface": {
                   "fields": ["interfaceid", "hostid", "main", "type", "useip", "ip", "dns", "port", "available"],
                   "data": [
                       [1, 10084, 1, 1, 1, "127.0.0.1", "", "10053", 1]
                   ]
               },
               "interface_snmp": {
                   "fields": ["interfaceid", "version", "bulk", "community", "securityname", "securitylevel", "authpassphrase", "privpassphrase", "authprotocol", "privprotocol", "contextname"],
                   "data": []
               },
               "host_inventory": {
                   "fields": ["hostid", "type", "type_full", "name", "alias", "os", "os_full", "os_short", "serialno_a", "serialno_b", "tag", "asset_tag", "macaddress_a", "macaddress_b", "hardware", "hardware_full", "software", "software_full", "software_app_a", "software_app_b", "software_app_c", "software_app_d", "software_app_e", "contact", "location", "location_lat", "location_lon", "notes", "chassis", "model", "hw_arch", "vendor", "contract_number", "installer_name", "deployment_status", "url_a", "url_b", "url_c", "host_networks", "host_netmask", "host_router", "oob_ip", "oob_netmask", "oob_router", "date_hw_purchase", "date_hw_install", "date_hw_expiry", "date_hw_decomm", "site_address_a", "site_address_b", "site_address_c", "site_city", "site_state", "site_country", "site_zip", "site_rack", "site_notes", "poc_1_name", "poc_1_email", "poc_1_phone_a", "poc_1_phone_b", "poc_1_cell", "poc_1_screen", "poc_1_notes", "poc_2_name", "poc_2_email", "poc_2_phone_a", "poc_2_phone_b", "poc_2_cell", "poc_2_screen", "poc_2_notes"],
                   "data": [
                       [10084, "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "56.95387", "24.22067", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""]
                   ]
               },
               "items": {
                   "fields": ["itemid", "type", "snmp_oid", "hostid", "key_", "delay", "history", "status", "value_type", "trapper_hosts", "logtimefmt", "params", "ipmi_sensor", "authtype", "username", "password", "publickey", "privatekey", "flags", "interfaceid", "inventory_link", "jmx_endpoint", "master_itemid", "timeout", "url", "query_fields", "posts", "status_codes", "follow_redirects", "post_type", "http_proxy", "headers", "retrieve_mode", "request_method", "output_format", "ssl_cert_file", "ssl_key_file", "ssl_key_password", "verify_peer", "verify_host", "allow_traps"],
                   "data": [
                       [44161, 7, "", 10084, "agent.hostmetadata", "10s", "90d", 0, 1, "", "", "", "", 0, "", "", "", "", 0, null, 0, "", null, "3s", "", "", "", "200", 1, 0, "", "", 0, 0, 0, "", "", "", 0, 0, 0],
                       [44162, 0, "", 10084, "agent.ping", "10s", "90d", 0, 3, "", "", "", "", 0, "", "", "", "", 0, 1, 0, "", null, "3s", "", "", "", "200", 1, 0, "", "", 0, 0, 0, "", "", "", 0, 0, 0]
                   ]
               },
               "item_rtdata": {
                   "fields": ["itemid", "lastlogsize", "mtime"],
                   "data": [
                       [44161, 0, 0],
                       [44162, 0, 0]
                   ]
               },
               "item_preproc": {
                   "fields": ["item_preprocid", "itemid", "step", "type", "params", "error_handler", "error_handler_params"],
                   "data": []
               },
               "item_parameter": {
                   "fields": ["item_parameterid", "itemid", "name", "value"],
                   "data": []
               },
               "globalmacro": {
                   "fields": ["globalmacroid", "macro", "value", "type"],
                   "data": [
                       [2, "{$SNMP_COMMUNITY}", "public", 0]
                   ]
               },
               "hosts_templates": {
                   "fields": ["hosttemplateid", "hostid", "templateid", "link_type"],
                   "data": []
               },
               "hostmacro": {
                   "fields": ["hostmacroid", "hostid", "macro", "value", "type", "automatic"],
                   "data": [
                       [5676, 10084, "{$M}", "AppID=zabbix_server&Query=Safe=passwordSafe;Object=zabbix:Content", 2, 0]
                   ]
               },
               "drules": {
                   "fields": ["druleid", "name", "iprange", "delay"],
                   "data": [
                       [2, "Local network", "127.0.0.1", "10s"]
                   ]
               },
               "dchecks": {
                   "fields": ["dcheckid", "druleid", "type", "key_", "snmp_community", "ports", "snmpv3_securityname", "snmpv3_securitylevel", "snmpv3_authpassphrase", "snmpv3_privpassphrase", "uniq", "snmpv3_authprotocol", "snmpv3_privprotocol", "snmpv3_contextname", "host_source", "name_source"],
                   "data": [
                       [2, 2, 9, "system.uname", "", "10052", "", 0, "", "", 0, 0, 0, "", 1, 0]
                   ]
               },
               "regexps": {
                   "fields": ["regexpid", "name"],
                   "data": [
                       [1, "File systems for discovery"],
                       [2, "Network interfaces for discovery"],
                       [3, "Storage devices for SNMP discovery"],
                       [4, "Windows service names for discovery"],
                       [5, "Windows service startup states for discovery"]
                   ]
               },
               "expressions": {
                   "fields": ["expressionid", "regexpid", "expression", "expression_type", "exp_delimiter", "case_sensitive"],
                   "data": [
                       [1, 1, "^(btrfs|ext2|ext3|ext4|reiser|xfs|ffs|ufs|jfs|jfs2|vxfs|hfs|apfs|refs|ntfs|fat32|zfs)$", 3, ",", 0],
                       [3, 3, "^(Physical memory|Virtual memory|Memory buffers|Cached memory|Swap space)$", 4, ",", 1],
                       [5, 4, "^(MMCSS|gupdate|SysmonLog|clr_optimization_v2.0.50727_32|clr_optimization_v4.0.30319_32)$", 4, ",", 1],
                       [6, 5, "^(automatic|automatic delayed)$", 3, ",", 1],
                       [7, 2, "^Software Loopback Interface", 4, ",", 1],
                       [8, 2, "^(In)?[Ll]oop[Bb]ack[0-9._]*$", 4, ",", 1],
                       [9, 2, "^NULL[0-9.]*$", 4, ",", 1],
                       [10, 2, "^[Ll]o[0-9.]*$", 4, ",", 1],
                       [11, 2, "^[Ss]ystem$", 4, ",", 1],
                       [12, 2, "^Nu[0-9.]*$", 4, ",", 1]
                   ]
               },
               "config": {
                   "fields": ["configid", "snmptrap_logging", "hk_history_global", "hk_history", "autoreg_tls_accept"],
                   "data": [
                       [1, 1, 0, "90d", 1]
                   ]
               },
               "httptest": {
                   "fields": ["httptestid", "name", "delay", "agent", "authentication", "http_user", "http_password", "hostid", "http_proxy", "retries", "ssl_cert_file", "ssl_key_file", "ssl_key_password", "verify_peer", "verify_host"],
                   "data": []
               },
               "httptestitem": {
                   "fields": ["httptestitemid", "httptestid", "itemid", "type"],
                   "data": []
               },
               "httptest_field": {
                   "fields": ["httptest_fieldid", "httptestid", "type", "name", "value"],
                   "data": []
               },
               "httpstep": {
                   "fields": ["httpstepid", "httptestid", "name", "no", "url", "timeout", "posts", "required", "status_codes", "follow_redirects", "retrieve_mode", "post_type"],
                   "data": []
               },
               "httpstepitem": {
                   "fields": ["httpstepitemid", "httpstepid", "itemid", "type"],
                   "data": []
               },
               "httpstep_field": {
                   "fields": ["httpstep_fieldid", "httpstepid", "type", "name", "value"],
                   "data": []
               },
               "config_autoreg_tls": {
                   "fields": ["autoreg_tlsid", "tls_psk_identity", "tls_psk"],
                   "data": [
                       [1, "", ""]
                   ]
               }
           },
           "macro.secrets": {
               "AppID=zabbix_server&Query=Safe=passwordSafe;Object=zabbix": {
                   "Content": "738"
               }
           },
           "config_revision": 2
       }
Petició de dades del proxy

Les peticions proxy data s'envien per el proxy per proporcionar dades de disponibilitat, històric, descoberta i autoregistre de la interfície de l'equip. Aquesta patició s'envia cada DataSenderFrequency segons (paràmetre de configuració del proxy). Veieu que el proxy actiu anirà informant al servidor Zabbix cada segon de tasques de comandes remotes (amb una petició proxy data buida).

nom tipus de valor descripció
proxy→server:
request string 'proxy data'
host string Nom del proxy.
session string Fitxa de sessió de dades.
interface availability array (opcional) Matriu d'objectes de dades de disponibilitat de la interfície.
interfaceid number Identificador de la interfície.
available number Disponibilitat de la interfície:

0, INTERFACE_AVAILABLE_UNKNOWN - desconegut
1, INTERFACE_AVAILABLE _TRUE - disponible
2, INTERFACE_AVAILABLE_FALSE - no disponible
error string Missatge d'error de la interfície o cadena buida.
history data array (opcional) Matriu d'objectes de dades de l'historial.
itemid number Identificador de l'element.
clock number Marca de temps del valor de l'element (segons).
ns number Marca de temps del valor de l'element (nanosegons).
value string (opcional) Valor de l'element.
id number Identificador del valor (comptador ascendent, únic en una sessió de dades).
timestamp number (opcional) Marca de temps dels elements del tipus de registre.
source string (opcional) Valor font de l'element del registre d'esdeveniments.
severity number (opcional) Valor de gravetat de l'element del registre d'esdeveniments.
eventid number (opcional) Valor d'event de l'element del registre d'esdeveniments.
status string (opcional) Estat de l'element:
0, ITEM_STATE_NORMAL
1, ITEM_STATE _NO SUPORT
lastlogsize number (opcional) Mida del darrer registre dels elements del tipus de registre.
mtime number (opcional) Hora de modificació dels elements del tipus de registre.
discovery data array (opcional) Matriu d'objectes de dades de descoberta.
clock number Marca de temps de les dades de descoberta.
druleid number Identificador de la regla de descoberta.
dcheckid number Identificador de comprovació de descoberta o nul per a les dades de la regla de descoberta.
type number Tipus de comprovació de descoberta:

-1 dades de la regla de descoberta
0, SVC_SSH - Comprovació del servei SSH
1, SVC_LDAP - Comprovació del servei LDAP
2, SVC_SMTP - Comprovació del servei SMTP
3, SVC_FTP - Comprovació del servei FTP
4, SVC_HTTP - Comprovació del servei HTTP
5, SVC_POP - Comprovació del servei POP
6, * SVC_NNTP* - Comprovació del servei NNTP
7, SVC_IMAP - Comprovació del servei IMAP
8, SVC_TCP - Comprovació de la disponibilitat del 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 - Comprovació del servei HTTPS<br >15**, SVC_TELNET - Comprovació de disponibilitat de Telnet
ip string Adreça IP de l'equip.
dns string Nom DNS de l'equip.
port number (opcional) Número de port de servei.
key_ string (opcional) Clau d'element per a la comprovació de descoberta de tipus 9 SVC_AGENT
value string (opcional) Valor rebut del servei, pot estar buit per a la majoria de serveis.
status number (opcional) Estat del servei:

0, DOBJECT_STATUS_UP - Servei UP
**1* , DOBJECT_STATUS_DOWN* - Servei DOWN
autoregistration array (opcional) Matriu d'objectes de dades d'autoregistre.
clock number Marca de temps de dades de registre automàtic.
host string Nom de l'equip.
ip string (opcional) Adreça IP de l'equip.
dns string (opcional) S'ha resolt el nom DNS des de l'adreça IP.
port string (opcional) Port equip.
host_metadata string (opcional) Metadades de l'equip enviades per l'agent (segons el paràmetre de configuració de l'agent HostMetadata o HostMetadataItem).
tasks array (opcional) Matriu de tasques.
type number Tipus de tasca:

0, ZBX_TM_TASK_PROCESS_REMOTE_COMMAND_RESULT - resultat de la comanda remota
status number Estat d'execució de l'ordre remot:

0, ZBX_TM_REMOTE_COMMAND_COMPLETED: l'ordre remota s'ha completat correctament
1, ZBX_TM_REMOTE_COMMAND_FAILED - l'ordre remota ha fallat
error string (opcional) Missatge d'error.
parent_taskid number ID de la tasca principal.
more number (opcional) 1 - hi ha més dades de l'historial per enviar.
clock number (opcional) Marca de temps de transferència de dades (segons).
ns number (opcional) Marca de temps de transferència de dades (nanosegons).
version string Versió del proxy (<major>.<menor>.<build>).
servidor→proxy:
response string Demanar informació sobre l'èxit ('èxit' o 'error').
upload string Control de càrrega de dades històriques (historial, registre automàtic, disponibilitat de l'equip, descoberta de xarxa).

Valors possibles:
activat - funcionament normal
desactivat: el servidor no admet dades (possiblement a causa del límit de la memòria cau interna)
tasks array (opcional) Matriu de tasques.
type number Tipus de tasca:

1, ZBX_TM_TASK_PROCESS_REMOTE_COMMAND - comanda remota
clock number Hora de creació de la tasca.
ttl number Temps en segons després del qual caduca la tasca.
commandtype number Tipus de comanda remota:

0, ZBX_SCRIPT_TYPE_CUSTOM_SCRIPT: utilitzeu un script personalitzat
** 1, ZBX_SCRIPT_TIP_IPMI: utilitza IPMI
2, ZBX_SCRIPT_TYPE_SSH: utilitza SSH
3, ZBX_SCRIPT_TYPE_TELNET: utilitza Telnet
4**, ZBX_SCRIPT_TYPE_GLOBAL_SCRIPT - utilitza script global (actualment equival a un script personalitzat)
ordre string Ordre remota per executar.
execute_on number Destí d'execució per a scripts personalitzats:

0, ZBX_SCRIPT_EXECUTE_ON_AGENT - executa l'script a l'agent< br>1, ZBX_SCRIPT_EXECUTE_ON_SERVER - executa l'script al servidor
2, ZBX_SCRIPT_EXECUTE_ON_PROXY - executa l'script al proxy
port number (opcional) Port per a ordres Telnet i SSH.
authtype number (opcional) Tipus d'autenticació per a ordres SSH.
username string (opcional) Nom d'usuari per a ordres Telnet i SSH.
password string (opcional) Mot de pas per a ordres Telnet i SSH.
publickey string (opcional) Clau pública per a ordres SSH.
privatekey string (opcional) Clau privada per a ordres SSH.
parent_taskid number ID de la tasca principal.
hostid number ID de l'equip objectiu.

Exemple:

proxy→server:

{
       "request": "proxy data",
       "host": "Zabbix proxy",
       "session": "818cdd1b537bdc5e50c09ed4969235b6",
       "interface availability": [{
       "interfaceid": 1,
       "available": 1,
       "error": ""
       }],
       "history data": [{
       "id": 1114,
       "itemid": 44162,
       "clock": 1665730632,
       "ns": 798953105,
       "value": "1"
       }, {
       "id": 1115,
       "itemid": 44161,
       "clock": 1665730633,
       "ns": 811684663,
       "value": "58"
       }],
       "auto registration": [{
       "clock": 1665730633,
       "host": "Zabbix server",
       "ip": "127.0.0.1",
       "dns": "localhost",
       "port": "10053",
       "host_metadata": "58",
       "tls_accepted": 1
       }],
       "discovery data": [{
       "clock": 1665732232,
       "drule": 2,
       "dcheck": 2,
       "ip": "127.0.0.1",
       "dns": "localhost",
       "port": 10052,
       "status": 1
       }, {
       "clock": 1665732232,
       "drule": 2,
       "dcheck": null,
       "ip": "127.0.0.1",
       "dns": "localhost",
       "status": 1
       }],
       "host data": [{
       "hostid": 10084,
       "active_status": 1
       }],
       "tasks": [{
       "type": 3,
       "clock": 1665730985,
       "ttl": 0,
       "status": -1,
       "info": "Remote commands are not enabled",
       "parent_taskid": 3
       }],
       "version": "6.4.0",
       "clock": 1665730643,
       "ns": 65389964
       }

server→proxy:

{
       "upload": "enabled",
       "response": "success",
       "tasks": [{
       "type": 2,
       "clock": 1665730986,
       "ttl": 600,
       "commandtype": 0,
       "command": "ping -c 3 127.0.0.1; case $? in [01]) true;; *) false;; esac",
       "execute_on": 2,
       "port": 0,
       "authtype": 0,
       "username": "",
       "password": "",
       "publickey": "",
       "privatekey": "",
       "alertid": 0,
       "parent_taskid": 4,
       "hostid": 10084
       }]
       }