Changes between Version 18 and Version 19 of ZabbixAgent
- Timestamp:
- Apr 24, 2026, 5:40:08 PM (3 hours ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
ZabbixAgent
v18 v19 57 57 `name=<наименование платы>`:: Значение переменной возвращается только при условии совпадения имени платы с указанным значением параметра. В процессе эксплуатации аппаратуры состав и расположение установленных в блоке плат может меняться. Возможна ситуация, когда в слот, где ранее была установлена и мониторилась плата одного типа, будет установлена плата другого типа, при этом новая плата может иметь переменную с тем же OID, что и ранее установленная, но значение этой переменной может иметь совершенно иную семантику. Такая ситуация приведет к тому, что система мониторинга будет получать и неверно интерпретировать значение переменных новой платы. Параметр `name` решает эту проблему: в случае, если наименование платы не совпадает с указанным в параметре `name` ключа, агент Zabbix вернет ошибку "not found". 58 58 59 `type=<код платы>`:: Назначение этого параметра аналогично параметру `name=<наименование платы>`. Каждому типу платы блока MC04-DSL-3U соответствует определенный числовой код. При указании параметра `type=<код платы>` значение переменной возвращается только при условии совпадения кода установленной в блоке платы с указанным значением параметра. См. параметр `name=<наименование платы>` выше. 60 59 61 `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 объект, передаваемый агентом серверу, что приведет к потере значения не только данного элемента, но и других, передаваемых агентом в том же сообщении. 60 62 … … 71 73 ==== Функция `boardlist` ==== 72 74 73 Функция служит для низкоуровневого обнаружения (LLD) плат в блоке и возвращает список плат блока в формате JSON объекта. Функция не имеет параметров. 75 Функция служит для низкоуровневого обнаружения (LLD) плат в блоке и возвращает список плат блока в формате JSON объекта. Функция не имеет параметров. Для каждой из установленных в блоке плат возвращаются значения следующих макросов: 76 - `{#SLOT}` - номер слота, в котором установлена плата; 77 - `{#BOARDNAME}` - наименование установленной платы; 78 - `{#BOARDTYPE}` - числовой код, обозначающий тип установленной платы; 79 - `{#BOARDVARIANT}` - номер варианта исполнения платы. 74 80 75 81
