Протокол Zabbix агента 2 основан на коде, размере и модели данных.
| Тип | Размер | Комментарии |
|---|---|---|
| Byte | 4 | Тип полезной нагрузки, в настоящее время поддерживается только JSON. |
| Тип | Размер | Комментарии |
|---|---|---|
| Byte | 4 | Размер текущей полезной нагрузки в байтах. |
| Тип | Размер | Комментарии |
|---|---|---|
| Byte | Определяется полем Размер | Данные в формате JSON. |
Эти параметры присутствуют во всех вопросах/ответах:
| Имя | Тип | Комментарии |
|---|---|---|
| id | uint32 | Для запросов — возрастающий идентификатор, используемый, чтобы связать запросы с ответами. Уникален в пределах направления запроса (т.е. от агента к плагину или от плагина к агенту). Для ответов — идентификатор соответствующего запроса. |
| type | uint32 | Тип запроса. |
Запрос отсылается плагином, чтобы записать журнальное сообщение в журнальный файл агента.
| направление | плагин → агент |
| ответ | нет |
Параметры, специфичные для запросов журналирования:
| Имя | Тип | Комментарии |
|---|---|---|
| severity | uint32 | Важность сообщения (уровень журналирования). |
| message | string | Сообщение для журнала. |
Пример:
Запрос отсылается агентом в фазе начальной загрузки агента, чтобы получить предоставляемые метрики для регистрации плагина.
| направление | агент → плагин |
| ответ | да |
Параметры, специфичные для запросов регистрации:
| Имя | Тип | Комментарии |
|---|---|---|
| version | string | Версия протокола <major>.<minor> |
Пример:
Ответ плагина на запрос на регистрацию.
| направление | плагин → агент |
| ответ | неприменимо |
Параметры, специфичные для ответов на регистрацию:
| Имя | Тип | Комментарии |
|---|---|---|
| name | string | Имя плагина. |
| metrics | array of strings (опционально) | Метрики с описаниями, как используется в плагине. Возвращает RegisterMetrics(). Отсутствует, если возвращается ошибка. |
| interfaces | uint32 (опционально) | Битовая маска интерфейсов, поддерживаемых плагином. Отсутствует, если возвращается ошибка. |
| error | string (опционально) | Сообщение об ошибке возвращается, если плагин не может запуститься. Отсутствует, если возвращаются метрики. |
Примеры:
или
Запрос на выполнение функции запуска (Start) интерфейса Runner.
| направление | агент → плагин |
| ответ | нет |
Запрос не имеет специфичных параметров, он содержит только параметры общих данных.
Пример:
Запрос отсылается агентом, чтобы остановить плагин.
| направление | агент → плагин |
| ответ | нет |
Запрос не имеет специфичных параметров, он содержит только параметры общих данных.
Пример:
Запрос на выполнение функции экспорта (Export) интерфейса Exporter.
| направление | агент → плагин |
| ответ | нет |
Параметры, специфичные для запросов экспорта:
| Имя | Тип | Комментарии |
|---|---|---|
| key | string | Ключ плагина. |
| parameters | array of strings (опционально) | Параметры для функции Export. |
Пример:
Ответ из функции Export интерфейса Exporter.
| направление | плагин → агент |
| ответ | неприменимо |
Параметры, специфичные для ответов экспорта:
| Имя | Тип | Комментарии |
|---|---|---|
| value | string (опционально) | Значение ответа из функции Export. Отсутствует, если возвращается ошибка. |
| error | string (опционально) | Сообщение об ошибке, если функция Export не была выполнена успешно. Отсутствует, если возвращается значение (value). |
Примеры:
или
Запрос на выполнение функции Configure интерфейса Configurator.
| направление | агент → плагин |
| ответ | неприменимо |
Параметры, специфичные для запросов Configure:
| Имя | Тип | Комментарии |
|---|---|---|
| global_options | объект JSON | Объект JSON, содержащий глобальные опции конфигурации агента. |
| private_options | объект JSON (опционально) | Объект JSON, содержащий персональные опции конфигурации плагина, если есть. |
Пример:
Запрос на выполнение функции Validate интерфейса Configurator.
| направление | агент → плагин |
| ответ | да |
Параметры, специфичные для запросов Validate:
| Имя | Тип | Комментарии |
|---|---|---|
| private_options | объект JSON (опционально) | Объект JSON, содержащий персональные опции конфигурации плагина, если есть. |
Пример:
Ответ от функции Validate интерфейса Configurator.
| направление | плагин → агент |
| ответ | неприменимо |
Параметры, специфичные для ответов на Validate:
| Имя | Тип | Комментарии |
|---|---|---|
| error | string (опционально) | Сообщение об ошибке, возвращаемое, если функция Validate не была выполнена успешно. Отсутствует при успешном завершении. |
Примеры:
или