Обмен данными сервер - прокси основывается на JSON формате.
Сообщения запроса и ответа должны начинаться с длины заголовка и данных.
Запрос proxy config отправляется сервером, чтобы обеспечить прокси данными конфигурации. Этот запрос отправляется каждые ProxyConfigFrequency (параметр конфигурации сервера) секунд.
| имя | тип значения | описание | |||
|---|---|---|---|---|---|
| сервер→прокси: | |||||
| request | строка | 'proxy config' | |||
| <таблица> | объект | один или несколько объектов с <таблица> данными | |||
| поля | массив | массив имен полей | |||
| - | строка | имя поля | |||
| данные | массив | массив строк | |||
| - | массив | массив колонок | |||
| - | строка,число | значение колонки с типом, зависящим от типа колонки в схеме базы данных | |||
| прокси→сервер: | |||||
| response | строка | информация об успешности запроса ('success' или 'failed') | |||
| version | строка | версия прокси (<мажорная>.<минорная>.<номер сборки>) | |||
Пример:
сервер→прокси:
{ "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 data используется для получения данных доступности узлов сети, истории, обнаружения и авторегистрации с прокси. Этот запрос отправляется каждые ProxyDataFrequency (параметр конфигурации сервера) секунд.
| имя | тип значения | описание | |
|---|---|---|---|
| сервер→прокси: | |||
| request | строка | 'proxy data' | |
| прокси→сервер: | |||
| session | строка | Токен сеанса передачи данных | |
| host availability | массив | (опционально) массив объектов с данными о доступности узлов сети | |
| hostid | число | идентификатор узла сети | |
| available | число | доступность Zabbix агента 0, HOST_AVAILABLE_UNKNOWN - неизвестно 1, HOST_AVAILABLE_TRUE - доступен 2, HOST_AVAILABLE_FALSE - недоступен | |
| error | строка | сообщение об ошибке Zabbix агента или пустая строка | |
| snmp_available | число | доступность SNMP агента 0, HOST_AVAILABLE_UNKNOWN - неизвестно 1, HOST_AVAILABLE_TRUE - доступен 2, HOST_AVAILABLE_FALSE - недоступен | |
| snmp_error | строка | сообщение об ошибке SNMP агента или пустая строка | |
| ipmi_available | число | доступность IPMI агента 0, HOST_AVAILABLE_UNKNOWN - неизвестно 1, HOST_AVAILABLE_TRUE - доступен 2, HOST_AVAILABLE_FALSE - недоступен | |
| ipmi_error | строка | сообщение об ошибке IPMI агента или пустая строка | |
| jmx_available | число | доступность JMX агента 0, HOST_AVAILABLE_UNKNOWN - неизвестно 1, HOST_AVAILABLE_TRUE - доступен 2, HOST_AVAILABLE_FALSE - недоступен | |
| jmx_error | строка | сообщение об ошибке JMX агента или пустая строка | |
| history data | массив | (опционально) массив объектов с данными истории | |
| itemid | число | идентификатор элемента данных | |
| clock | число | штамп времени значения элемента данных (секунды) | |
| ns | число | штамп времени значения элемента данных (наносекунды) | |
| value | строка | (опционально) значение элемента данных | |
| id | число | идентификатор числа (возрастающий счётчик, уникальный в пределах одного сеанса передачи данных) | |
| timestamp | число | (опционально) штамп времени у элементов данных с типом журнал (лог) | |
| source | строка | (опционально) значение источника элемента данных журнала событий | |
| severity | число | (опционально) значение важности элемента данных журнала событий | |
| eventid | число | (опционально) значение eventid элемента данных журнала событий | |
| state | строка | (опционально) статус элемента данных 0, ITEM_STATE_NORMAL 1, ITEM_STATE_NOTSUPPORTED | |
| lastlogsize | число | (опционально) последний размер журнала у элементов данных с типом журнал (лог) | |
| mtime | число | (опционально) время модификации журнала у элементов данных с типом журнал (лог) | |
| discovery data | массив | (опционально) массив объектов с данными обнаружения | |
| clock | число | штамп времени данных обнаружения | |
| druleid | число | идентификатор правила обнаружения | |
| dcheckid | число | идентификатор проверки обнаружения или null для данных правила обнаружения | |
| type | число | тип проверки обнаружения: -1 данные правила обнаружения 0, SVC_SSH - проверка SSH сервиса 1, SVC_LDAP - проверка LDAP сервиса 2, SVC_SMTP - проверка SMTP сервиса 3, SVC_FTP - проверка FTP сервиса 4, SVC_HTTP - проверка HTTP сервиса 5, SVC_POP - проверка POP сервиса 6, SVC_NNTP - проверка NNTP сервиса 7, SVC_IMAP - проверка IMAP сервиса 8, SVC_TCP - проверка доступности TCP порта 9, SVC_AGENT - Zabbix агент 10, SVC_SNMPv1 - SNMPv1 агент 11, SVC_SNMPv2 - SNMPv2 агент 12, SVC_ICMPPING - ICMP пинг 13, SVC_SNMPv3 - SNMPv3 агент 14, SVC_HTTPS - проверка HTTPS сервиса 15, SVC_TELNET - проверка доступности Telnet | |
| ip | строка | IP адрес хоста | |
| dns | строка | DNS имя хоста | |
| port | число | (опционально) номер порта сервиса | |
| key_ | строка | (опционально) ключ элемента данных для проверки обнаружения с типом 9 SVC_AGENT | |
| value | строка | (опционально) полученное значение от сервиса, может быть пустым по большинству сервисов | |
| status | число | (опционально) состояние сервиса: 0, DOBJECT_STATUS_UP - Сервис ДОСТУПЕН 1, DOBJECT_STATUS_DOWN - Сервис НЕДОСТУПЕН | |
| auto registration | массив | (опционально) массив объектов с данными авторегистрации | |
| clock | число | штамп времени данных авторегистрации | |
| host | строка | имя хоста | |
| ip | строка | (опционально) IP адрес хоста | |
| dns | строка | (опционально) разрешенный DNS имя с IP адреса | |
| port | строка | (опционально) порт хоста | |
| host_metadata | строка | (опционально) метаданные хоста, которые отправил агент (на основе параметров конфигурации агента HostMetadata или HostMetadataItem) | |
| tasks | массив | (опционально) массив задач | |
| type | число | тип задачи: 0, ZBX_TM_TASK_PROCESS_REMOTE_COMMAND_RESULT - результат удаленной команды | |
| status | число | состояние выполнения удаленной команды: 0, ZBX_TM_REMOTE_COMMAND_COMPLETED - удаленная команда завершена успешно 1, ZBX_TM_REMOTE_COMMAND_FAILED - удаленная команда завершилась с ошибкой | |
| error | строка | (опционально) сообщение об ошибке | |
| parent_taskid | число | id родительской задачи | |
| more | число | (опционально) 1 - имеются еще данные истории к отправке | |
| clock | число | (опционально) штамп времени передачи данных (секунды) | |
| ns | число | (опционально) штамп времени передачи данных (наносекунды) | |
| version | строка | версия прокси (<мажорная>.<минорная>.<номер сборки>) | |
| сервер→прокси: | |||
| response | строка | информация об успешности запроса ('success' или 'failed') | |
| tasks | массив | (опционально) array of tasks | |
| type | число | тип задачи: 1, ZBX_TM_TASK_PROCESS_REMOTE_COMMAND - удаленная команда | |
| clock | число | время создания задачи | |
| ttl | число | время в секундах после которого срок задачи истекает | |
| commandtype | число | тип удаленной команды: 0, ZBX_SCRIPT_TYPE_CUSTOM_SCRIPT - использование пользовательского скрипта 1, ZBX_SCRIPT_TYPE_IPMI - использование IPMI 2, ZBX_SCRIPT_TYPE_SSH - использование SSH 3, ZBX_SCRIPT_TYPE_TELNET - использование Telnet 4, ZBX_SCRIPT_TYPE_GLOBAL_SCRIPT - использование глобального скрипта (в настоящее время возможности эквивалентны пользовательской команде) | |
| command | строка | выполняемая удаленная команда | |
| execute_on | число | цель выполнения для пользовательских скриптов: 0, ZBX_SCRIPT_EXECUTE_ON_AGENT - выполнение скрипта на стороне агента 1, ZBX_SCRIPT_EXECUTE_ON_SERVER - выполнение скрипта на стороне сервера 2, ZBX_SCRIPT_EXECUTE_ON_PROXY - выполнение скрипта на стороне прокси | |
| port | число | (опционально) порт для telnet и ssh команд | |
| authtype | число | (опционально) тип аутентификации для ssh команд | |
| username | строка | (опционально) имя пользователя для telnet и ssh команд | |
| password | строка | (опционально) пароль для telnet и ssh команд | |
| publickey | строка | (опционально) публичный ключ для ssh команд | |
| privatekey | строка | (опционально) приватный ключ для ssh команд | |
| parent_taskid | число | id родительской задачи | |
| hostid | число | hostid цели | |
Пример:
сервер→прокси:
прокси→сервер:
{ "session": "12345678901234567890123456789012" "host availability":[ { "hostid":10106, "available":1, "error":"", "snmp_available":0, "snmp_error":"", "ipmi_available":0, "ipmi_error":"", "jmx_available":0, "jmx_error":"" }, { "hostid":10107, "available":1, "error":"", "snmp_available":0, "snmp_error":"", "ipmi_available":0, "ipmi_error":"", "jmx_available":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" }сервер→прокси:
{ "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 heartbeat отправляется прокси, чтобы сообщить, что прокси запущен. Этот запрос отправляется каждые HeartbeatFrequency (параметр конфигурации прокси) секунд.
| имя | тип значения | описание | |
|---|---|---|---|
| прокси→сервер: | |||
| request | строка | 'proxy heartbeat' | |
| host | строка | имя прокси | |
| version | строка | версия прокси (<мажорная>.<минорная>.<номер сборки>) | |
| сервер→прокси: | |||
| response | строка | информация об успешности запроса ('success' или 'failed') | |
прокси→сервер:
сервер→прокси:
Запрос proxy config отправляется прокси, чтобы получить данные конфигурации прокси. Запрос отправляется каждые ConfigFrequency (параметр конфигурации прокси) секунд.
| имя | тип значения | описание | |||
|---|---|---|---|---|---|
| прокси→сервер: | |||||
| request | строка | 'proxy config' | |||
| host | строка | имя прокси | |||
| version | строка | версия прокси (<мажорная>.<минорная>.<номер сборки>) | |||
| сервер→прокси: | |||||
| request | строка | 'proxy config' | |||
| <table> | объект | один или несколько объектов с <таблица> данными | |||
| fields | массив | массив имен полей | |||
| - | строка | имя поля | |||
| data | массив | массив строк | |||
| - | массив | массив колонок | |||
| - | строка,число | значение колонки с типом, зависящим от типа колонки в схеме базы данных | |||
| прокси→сервер: | |||||
| response | строка | информация об успешности запроса ('success' или 'failed') | |||
Пример:
прокси→сервер:
сервер→прокси:
{ "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 data отправляется прокси, чтобы предоставить данные доступности узлов сети, истории, обнаружения и авторегистрации. Этот запрос отправляется каждые DataSenderFrequency (параметр конфигурации прокси) секунд.
| имя | тип значения | описание | |
|---|---|---|---|
| прокси→сервер: | |||
| request | строка | 'proxy data' | |
| host | строка | имя прокси | |
| session | строка | Токен сеанса передачи данных | |
| host availability | массив | (опционально) массив объектов с данными о доступности узлов сети | |
| hostid | число | идентификатор узла сети | |
| available | число | доступность Zabbix агента 0, HOST_AVAILABLE_UNKNOWN - неизвестно 1, HOST_AVAILABLE_TRUE - доступен 2, HOST_AVAILABLE_FALSE - недоступен | |
| error | строка | сообщение об ошибке Zabbix агента или пустая строка | |
| snmp_available | число | доступность SNMP агента 0, HOST_AVAILABLE_UNKNOWN - неизвестно 1, HOST_AVAILABLE_TRUE - доступен 2, HOST_AVAILABLE_FALSE - недоступен | |
| snmp_error | строка | сообщение об ошибке SNMP агента или пустая строка | |
| ipmi_available | число | доступность IPMI агента 0, HOST_AVAILABLE_UNKNOWN - неизвестно 1, HOST_AVAILABLE_TRUE - доступен 2, HOST_AVAILABLE_FALSE - недоступен | |
| ipmi_error | строка | сообщение об ошибке IPMI агента или пустая строка | |
| jmx_available | число | доступность JMX агента 0, HOST_AVAILABLE_UNKNOWN - неизвестно 1, HOST_AVAILABLE_TRUE - доступен 2, HOST_AVAILABLE_FALSE - недоступен | |
| jmx_error | строка | сообщение об ошибке JMX агента или пустая строка | |
| history data | массив | (опционально) массив объектов с данными истории | |
| itemid | число | идентификатор элемента данных | |
| clock | число | штамп времени значения элемента данных (секунды) | |
| ns | число | штамп времени значения элемента данных (наносекунды) | |
| value | строка | (опционально) значение элемента данных | |
| id | число | идентификатор числа (возрастающий счётчик, уникальный в пределах одного сеанса передачи данных) | |
| timestamp | число | (опционально) штамп времени у элементов данных с типом журнал (лог) | |
| source | строка | (опционально) значение источника элемента данных журнала событий | |
| severity | число | (опционально) значение важности элемента данных журнала событий | |
| eventid | число | (опционально) значение eventid элемента данных журнала событий | |
| state | строка | (опционально) статус элемента данных 0, ITEM_STATE_NORMAL 1, ITEM_STATE_NOTSUPPORTED | |
| lastlogsize | число | (опционально) последний размер журнала у элементов данных с типом журнал (лог) | |
| mtime | число | (опционально) время модификации журнала у элементов данных с типом журнал (лог) | |
| discovery data | массив | (опционально) массив объектов с данными обнаружения | |
| clock | число | штамп времени данных обнаружения | |
| druleid | число | идентификатор правила обнаружения | |
| dcheckid | число | идентификатор проверки обнаружения или null для данных правила обнаружения | |
| type | число | тип проверки обнаружения: -1 данные правила обнаружения 0, SVC_SSH - проверка SSH сервиса 1, SVC_LDAP - проверка LDAP сервиса 2, SVC_SMTP - проверка SMTP сервиса 3, SVC_FTP - проверка FTP сервиса 4, SVC_HTTP - проверка HTTP сервиса 5, SVC_POP - проверка POP сервиса 6, SVC_NNTP - проверка NNTP сервиса 7, SVC_IMAP - проверка IMAP сервиса 8, SVC_TCP - проверка доступности TCP порта 9, SVC_AGENT - Zabbix агент 10, SVC_SNMPv1 - SNMPv1 агент 11, SVC_SNMPv2 - SNMPv2 агент 12, SVC_ICMPPING - ICMP пинг 13, SVC_SNMPv3 - SNMPv3 агент 14, SVC_HTTPS - проверка HTTPS сервиса 15, SVC_TELNET - проверка доступности Telnet | |
| ip | строка | IP адрес хоста | |
| dns | строка | DNS имя хоста | |
| port | число | (опционально) номер порта сервиса | |
| key_ | строка | (опционально) ключ элемента данных для проверки обнаружения с типом 9 SVC_AGENT | |
| value | строка | (опционально) полученное значение от сервиса, может быть пустым по большинству сервисов | |
| status | число | (опционально) состояние сервиса: 0, DOBJECT_STATUS_UP - Сервис ДОСТУПЕН 1, DOBJECT_STATUS_DOWN - Сервис НЕДОСТУПЕН | |
| auto registration | массив | (опционально) массив объектов с данными авторегистрации | |
| clock | число | штамп времени данных авторегистрации | |
| host | строка | имя хоста | |
| ip | строка | (опционально) IP адрес хоста | |
| dns | строка | (опционально) разрешенный DNS имя с IP адреса | |
| port | строка | (опционально) порт хоста | |
| host_metadata | строка | (опционально) метаданные хоста, которые отправил агент (на основе параметров конфигурации агента HostMetadata или HostMetadataItem) | |
| tasks | массив | (опционально) массив задач | |
| type | число | тип задачи: 0, ZBX_TM_TASK_PROCESS_REMOTE_COMMAND_RESULT - результат удаленной команды | |
| status | число | состояние выполнения удаленной команды: 0, ZBX_TM_REMOTE_COMMAND_COMPLETED - удаленная команда завершена успешно 1, ZBX_TM_REMOTE_COMMAND_FAILED - удаленная команда завершилась с ошибкой | |
| error | строка | (опционально) сообщение об ошибке | |
| parent_taskid | число | id родительской задачи | |
| more | число | (опционально) 1 - имеются еще данные истории к отправке | |
| clock | число | (опционально) штамп времени передачи данных (секунды) | |
| ns | число | (опционально) штамп времени передачи данных (наносекунды) | |
| version | строка | версия прокси (<мажорная>.<минорная>.<номер сборки>) | |
| сервер→прокси: | |||
| response | строка | информация об успешности запроса ('success' или 'failed') | |
| tasks | массив | (опционально) array of tasks | |
| type | число | тип задачи: 1, ZBX_TM_TASK_PROCESS_REMOTE_COMMAND - удаленная команда | |
| clock | число | время создания задачи | |
| ttl | число | время в секундах после которого срок задачи истекает | |
| commandtype | число | тип удаленной команды: 0, ZBX_SCRIPT_TYPE_CUSTOM_SCRIPT - использование пользовательского скрипта 1, ZBX_SCRIPT_TYPE_IPMI - использование IPMI 2, ZBX_SCRIPT_TYPE_SSH - использование SSH 3, ZBX_SCRIPT_TYPE_TELNET - использование Telnet 4, ZBX_SCRIPT_TYPE_GLOBAL_SCRIPT - использование глобального скрипта (в настоящее время возможности эквивалентны пользовательской команде) | |
| command | строка | выполняемая удаленная команда | |
| execute_on | число | цель выполнения для пользовательских скриптов: 0, ZBX_SCRIPT_EXECUTE_ON_AGENT - выполнение скрипта на стороне агента 1, ZBX_SCRIPT_EXECUTE_ON_SERVER - выполнение скрипта на стороне сервера 2, ZBX_SCRIPT_EXECUTE_ON_PROXY - выполнение скрипта на стороне прокси | |
| port | число | (опционально) порт для telnet и ssh команд | |
| authtype | число | (опционально) тип аутентификации для ssh команд | |
| username | строка | (опционально) имя пользователя для telnet и ssh команд | |
| password | строка | (опционально) пароль для telnet и ssh команд | |
| publickey | строка | (опционально) публичный ключ для ssh команд | |
| privatekey | строка | (опционально) приватный ключ для ssh команд | |
| parent_taskid | число | id родительской задачи | |
| hostid | число | hostid цели | |
Пример:
пркси→сервер:
{ "request": "proxy data", "host": "Proxy #12", "session": "12345678901234567890123456789012", "host availability":[ { "hostid":10106, "available":1, "error":"", "snmp_available":0, "snmp_error":"", "ipmi_available":0, "ipmi_error":"", "jmx_available":0, "jmx_error":"" }, { "hostid":10107, "available":1, "error":"", "snmp_available":0, "snmp_error":"", "ipmi_available":0, "ipmi_error":"", "jmx_available":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" }сервер→прокси:
{ "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 } ] }Сервер поддерживает частичную обратную совместимость, принимая старые запросы host availability, history data, discovery data и auto registration.