Changes between Version 18 and Version 19 of ZabbixAgent


Ignore:
Timestamp:
Apr 24, 2026, 5:40:08 PM (3 hours ago)
Author:
alx
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • ZabbixAgent

    v18 v19  
    5757 `name=<наименование платы>`:: Значение переменной возвращается только при условии совпадения имени платы с указанным значением параметра. В процессе эксплуатации аппаратуры состав и расположение установленных в блоке плат может меняться. Возможна ситуация, когда в слот, где ранее была установлена и мониторилась плата одного типа, будет установлена плата другого типа, при этом новая плата может иметь переменную с тем же OID, что и ранее установленная, но значение этой переменной может иметь совершенно иную семантику. Такая ситуация приведет к тому, что система мониторинга будет получать и неверно интерпретировать значение переменных новой платы. Параметр `name` решает эту проблему: в случае, если наименование платы не совпадает с указанным в параметре `name` ключа, агент Zabbix вернет ошибку "not found".
    5858
     59 `type=<код платы>`:: Назначение этого параметра аналогично параметру `name=<наименование платы>`. Каждому типу платы блока MC04-DSL-3U соответствует определенный числовой код. При указании параметра `type=<код платы>` значение переменной возвращается только при условии совпадения кода установленной в блоке платы с указанным значением параметра. См. параметр `name=<наименование платы>` выше.
     60
    5961 `format=<string|hex|array>`:: Параметр позволяет устранить неоднозначность формата возвращаемого значения. Так как у плат блока MC04-DSL-3U отсутствует специальный тип для двоичных данных, для этих целей используется тип "строка". Как результат, при получении значения типа строка возникает неоднозначность - интерпретировать ли значение как текстовую строку или как двоичные данные (массив байт). По умолчанию (без указания параметра `format`) агент Zabbix принимает решение, анализируя полученное значение (подобно тому как это происходит в распространенных агентах SNMP): если в полученном значении присутствуют "непечатные" символы (байты с кодами меньше 32), то значение передается серверу Zabbix в формате HEX: как последовательность пар шестнадцатеричных цифр разделенных пробелами (например `23 fc 2b 02 00 e3 56`). В противном случае (если "непечатные" символы не обнаружены) значение передается серверу как текстовая строка (string). Указание параметра `format` позволяет однозначно задать формат, в котором агент будет передавать серверу значение переменной. Дополнительно у описанным выше форматам можно указать формат `array` - в этом случае значение переменной будет передано как JSON массив десятичных значений байтов (например `[35, 215, 41, 2, 0, 198, 4]`). Формат "array" удобен для пред-обработки значения сервером Zabbix с помощью JSONPath или !JavaScript. Обратите внимание, что при использовании параметра `format=string` текстовая строка может оказаться невалидной (например если в значении содержатся нулевые байты), в результате чего невалидным может оказаться JSON объект, передаваемый агентом серверу, что приведет к потере значения не только данного элемента, но и других, передаваемых агентом в том же сообщении.
    6062
     
    7173==== Функция `boardlist` ====
    7274
    73 Функция служит для низкоуровневого обнаружения (LLD) плат в блоке и возвращает список плат блока в формате JSON объекта. Функция не имеет параметров.
     75Функция служит для низкоуровневого обнаружения (LLD) плат в блоке и возвращает список плат блока в формате JSON объекта. Функция не имеет параметров. Для каждой из установленных в блоке плат возвращаются значения следующих макросов:
     76- `{#SLOT}` - номер слота, в котором установлена плата;
     77- `{#BOARDNAME}` - наименование установленной платы;
     78- `{#BOARDTYPE}` - числовой код, обозначающий тип установленной платы;
     79- `{#BOARDVARIANT}` - номер варианта исполнения платы.
    7480
    7581