item.get

Описание

целое число/массив item.get(объект параметры)

Этот метод позволяет получать элементы данных в соответствии с заданными параметрами.

Параметры

(объект) Параметры задают желаемый вывод.

Этот метод поддерживает следующие параметры.

Параметр Тип Описание
itemids строка/массив Возврат элементов данных только с заданными ID.
groupids строка/массив Возврат только тех элементов данных, которые принадлежат узлам сети с заданных групп узлов сети.
templateids строка/массив Возврат только тех элементов данных, которые принадлежат заданным шаблонам.
hostids строка/массив Возврат только тех элементов данных, которые принадлежат заданным узлам сети.
proxyids строка/массив Возврат только тех элементов данных, которые наблюдаются заданными прокси.
interfaceids строка/массив Возврат только тех элементов данных, которые используют заданные интерфейсы узлов сети.
graphids строка/массив Возврат только тех элементов данных, которые используются в заданных графиках.
triggerids строка/массив Возврат только тех элементов данных, которые используются в заданных триггерах.
applicationids строка/массив Возврат только тех элементов данных, которые входят в заданные группы элементов данных.
webitems флаг Включение в результат веб элементов данных.
inherited логический Если задано значение true, возвращать только те элементы данных, которые унаследованы из шаблона.
templated логический Если задано значение true, возвращать только те элементы данных, которые принадлежат шаблонам.
monitored логический Если задано значение true, возвращать только активированные элементы данных, которые принадлежат узлам сети под наблюдением.
group строка Возврат только тех элементов данных, которые принадлежат группе с заданным именем.
host строка Возврат только тех элементов данных, которые принадлежат узлу сети с заданным именем.
application строка Возврат только тех элементов данных, которые входят в группу элементов данных с заданным именем.
with_triggers логический Если задано значение true, возвращать только те элементы данных, которые используются в триггерах.
selectHosts запрос Возврат свойства hosts с массивом узлов сети, которым принадлежит элемент данных.
selectInterfaces запрос Возврат свойства interfaces с массивом интерфейсов узла сети, которые используются элементом данных.
selectTriggers запрос Возврат свойства triggers с триггерами, которые используют элемент данных.

Поддерживается count.
selectGraphs запрос Возврат свойства graphs с графиками, которые содержат элемент данных.

Поддерживается count.
selectApplications запрос Возврат свойства applications с группами элементов данных, которым принадлежит элемент данных.
selectDiscoveryRule запрос Возврат свойства discoveryRule с LLD правилом, которое создало элемент данных.
selectItemDiscovery запрос Возврат свойства itemDiscovery с объектом обнаружения элемента данных в свойстве itemDiscovery.

Объект обнаружения элемента данных связывает элемент данных с прототипом элементов данных и имеет следующие свойства:
itemdiscoveryid - (строка) ID обнаружения элемента данных;
itemid - (строка) ID обнаруженного элемента данных;
parent_itemid - (строка) ID прототипа элемента данных с которого был создан элемент данных;
key_ - (строка) ключ прототипа элемента данных;
lastcheck - (штамп времени) время, когда элемент данных был в последний раз обнаружен;
ts_delete - (штамп времени) время, когда более необнаруживаемый элемент данных будет удален.
selectPreprocessing запрос Возврат свойства preprocessing с опциями предобработки элемента данных.

Этот параметр имеет следующие свойства:
type - (строка) Типы опций предобработки:
1 - Пользовательский множитель;
2 - Обрезка справа;
3 - Обрезка слева;
4 - Обрезка;
5 - Соответствие регулярному выражению;
6 - Двоичное в десятичное;
7 - Восьмеричное в десятичное;
8 - Шестнадцатеричное в десятичное;
9 - Простое изменение;
10 - Изменение в секунду;
11 - XML XPath;
12 - JSONPath;
13 - По диапазону;
14 - Соответствие регулярному выражению;
15 - Отсутствие соответствия регулярному выражению;
16 - Проверка на наличие ошибки в JSON;
17 - Проверка на наличие ошибки в XML;
18 - Проверка на наличие ошибки с использованием регулярного выражения;
19 - Отбрасывать не изменившееся;
20 - Отбрасывать не изменившееся с периодическим контролем;
21 - JavaScript;
22 - Шаблон Prometheus;
23 - Prometheus в JSON.

params - (строка) Дополнительные параметры, которые используются опцией предобработки. Несколько параметров разделяются символом LF (\n).
error_handler - (строка) Тип действия, которое используется при ошибке в шаге предобработки:
0 - Сообщение об ошибке, которое задается Zabbix сервером;
1 - Отбрасывать значение;
2 - Задать пользовательское значение;
3 - Задать пользовательское сообщение об ошибке.

error_handler_params - (строка) Параметры обработчика ошибок.
filter объект Возврат только тех результатов, которые в точности соответствуют заданному фильтру.

Принимает массив, где ключи являются именами свойств и значения, которые являются либо одним значением, либо массивом сопоставляемых значений.

Поддерживает дополнительные фильтры:
host - техническое имя узла сети, которому принадлежит элемент данных.
limitSelects целое число Ограничение количества записей, возвращаемых подзапросами.

Применимо только к следующим подзапросам:
selectGraphs - результаты сортируются по name;
selectTriggers - результаты сортируются по description.
sortfield строка/массив Сортировка результата в соответствии с заданными свойствами.

Возможные значения: itemid, name, key_, delay, history, trends, type и status.
countOutput логический Эти параметры являются общими для всех методов get и они описаны в справочных комментариях.
editable логический
excludeSearch логический
limit целое число
output запрос
preservekeys логический
search объект
searchByAny логический
searchWildcardsEnabled логический
sortorder строка/массив
startSearch логический

Возвращаемые значения

(целое число/массив) Возвращает либо:

  • массив объектов;
  • количество найденных объектов, если используется параметр countOutput.

Примеры

Поиск элементов данных по ключу

Получение всех элементов данных с узлов сети с ID "10084", которые имеют в ключе слово "system" и сортировка результата по имени.

Запрос:

{
           "jsonrpc": "2.0",
           "method": "item.get",
           "params": {
               "output": "extend",
               "hostids": "10084",
               "search": {
                   "key_": "system"
               },
               "sortfield": "name"
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Ответ:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "itemid": "23298",
                   "type": "0",
                   "snmp_community": "",
                   "snmp_oid": "",
                   "hostid": "10084",
                   "name": "Context switches per second",
                   "key_": "system.cpu.switches",
                   "delay": "1m",
                   "history": "7d",
                   "trends": "365d",
                   "lastvalue": "2552",
                   "lastclock": "1351090998",
                   "prevvalue": "2641",
                   "state": "0",
                   "status": "0",
                   "value_type": "3",
                   "trapper_hosts": "",
                   "units": "sps",
                   "snmpv3_securityname": "",
                   "snmpv3_securitylevel": "0",
                   "snmpv3_authpassphrase": "",
                   "snmpv3_privpassphrase": "",
                   "snmpv3_authprotocol": "0",
                   "snmpv3_privprotocol": "0",
                   "snmpv3_contextname": "",
                   "error": "",
                   "logtimefmt": "",
                   "templateid": "22680",
                   "valuemapid": "0",
                   "params": "",
                   "ipmi_sensor": "",
                   "authtype": "0",
                   "username": "",
                   "password": "",
                   "publickey": "",
                   "privatekey": "",
                   "lastns": "564054253",
                   "flags": "0",
                   "interfaceid": "1",
                   "port": "",
                   "description": "",
                   "inventory_link": "0",
                   "lifetime": "0s",
                   "evaltype": "0",
                   "jmx_endpoint": "",
                   "master_itemid": "0",
                   "timeout": "3s",
                   "url": "",
                   "query_fields": [],
                   "posts": "",
                   "status_codes": "200",
                   "follow_redirects": "1",
                   "post_type": "0",
                   "http_proxy": "",
                   "headers": [],
                   "retrieve_mode": "0",
                   "request_method": "0",
                   "output_format": "0",
                   "ssl_cert_file": "",
                   "ssl_key_file": "",
                   "ssl_key_password": "",
                   "verify_peer": "0",
                   "verify_host": "0",
                   "allow_traps": "0"
               },
               {
                   "itemid": "23299",
                   "type": "0",
                   "snmp_community": "",
                   "snmp_oid": "",
                   "hostid": "10084",
                   "name": "CPU $2 time",
                   "key_": "system.cpu.util[,idle]",
                   "delay": "1m",
                   "history": "7d",
                   "trends": "365d",
                   "lastvalue": "86.031879",
                   "lastclock": "1351090999",
                   "prevvalue": "85.306944",
                   "state": "0",
                   "status": "0",
                   "value_type": "0",
                   "trapper_hosts": "",
                   "units": "%",
                   "snmpv3_securityname": "",
                   "snmpv3_securitylevel": "0",
                   "snmpv3_authpassphrase": "",
                   "snmpv3_privpassphrase": "",
                   "snmpv3_authprotocol": "0",
                   "snmpv3_privprotocol": "0",
                   "snmpv3_contextname": "",
                   "error": "",
                   "logtimefmt": "",
                   "templateid": "17354",
                   "valuemapid": "0",
                   "params": "",
                   "ipmi_sensor": "",
                   "authtype": "0",
                   "username": "",
                   "password": "",
                   "publickey": "",
                   "privatekey": "",
                   "lastns": "564256864",
                   "flags": "0",
                   "interfaceid": "1",
                   "port": "",
                   "description": "The time the CPU has spent doing nothing.",
                   "inventory_link": "0",
                   "lifetime": "0s",
                   "evaltype": "0",
                   "jmx_endpoint": "",
                   "master_itemid": "0",
                   "timeout": "3s",
                   "url": "",
                   "query_fields": [],
                   "posts": "",
                   "status_codes": "200",
                   "follow_redirects": "1",
                   "post_type": "0",
                   "http_proxy": "",
                   "headers": [],
                   "retrieve_mode": "0",
                   "request_method": "0",
                   "output_format": "0",
                   "ssl_cert_file": "",
                   "ssl_key_file": "",
                   "ssl_key_password": "",
                   "verify_peer": "0",
                   "verify_host": "0",
                   "allow_traps": "0"
               },
               {
                   "itemid": "23300",
                   "type": "0",
                   "snmp_community": "",
                   "snmp_oid": "",
                   "hostid": "10084",
                   "name": "CPU $2 time",
                   "key_": "system.cpu.util[,interrupt]",
                   "history": "7d",
                   "trends": "365d",
                   "lastvalue": "0.008389",
                   "lastclock": "1351091000",
                   "prevvalue": "0.000000",
                   "state": "0",
                   "status": "0",
                   "value_type": "0",
                   "trapper_hosts": "",
                   "units": "%",
                   "snmpv3_securityname": "",
                   "snmpv3_securitylevel": "0",
                   "snmpv3_authpassphrase": "",
                   "snmpv3_privpassphrase": "",
                   "snmpv3_authprotocol": "0",
                   "snmpv3_privprotocol": "0",
                   "snmpv3_contextname": "",
                   "error": "",
                   "logtimefmt": "",
                   "templateid": "22671",
                   "valuemapid": "0",
                   "params": "",
                   "ipmi_sensor": "",
                   "authtype": "0",
                   "username": "",
                   "password": "",
                   "publickey": "",
                   "privatekey": "",
                   "lastns": "564661387",
                   "flags": "0",
                   "interfaceid": "1",
                   "port": "",
                   "description": "The amount of time the CPU has been servicing hardware interrupts.",
                   "inventory_link": "0",
                   "lifetime": "0s",
                   "evaltype": "0",
                   "jmx_endpoint": "",
                   "master_itemid": "0",
                   "timeout": "3s",
                   "url": "",
                   "query_fields": [],
                   "posts": "",
                   "status_codes": "200",
                   "follow_redirects": "1",
                   "post_type": "0",
                   "http_proxy": "",
                   "headers": [],
                   "retrieve_mode": "0",
                   "request_method": "0",
                   "output_format": "0",
                   "ssl_cert_file": "",
                   "ssl_key_file": "",
                   "ssl_key_password": "",
                   "verify_peer": "0",
                   "verify_host": "0",
                   "allow_traps": "0"
               }
           ],
           "id": 1
       }

Поиск зависимых элементов данных по ключу

Получение всех Зависимых элементов данных с узла сети с ID "10116", у которых в ключе имеется слово "apache".

Запрос:

{
           "jsonrpc": "2.0",
           "method": "item.get",
           "params": {
               "output": "extend",
               "hostids": "10116",
               "search": {
                   "key_": "apache"
               },
               "filter": {
                   "type": "18"
               }
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Ответ:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "itemid": "25550",
                   "type": "18",
                   "snmp_community": "",
                   "snmp_oid": "",
                   "hostid": "10116",
                   "name": "Days",
                   "key_": "apache.status.uptime.days",
                   "delay": "",
                   "history": "90d",
                   "trends": "365d",
                   "status": "0",
                   "value_type": "3",
                   "trapper_hosts": "",
                   "units": "",
                   "snmpv3_securityname": "",
                   "snmpv3_securitylevel": "0",
                   "snmpv3_authpassphrase": "",
                   "snmpv3_privpassphrase": "",
                   "formula": "",
                   "error": "",
                   "logtimefmt": "",
                   "templateid": "0",
                   "valuemapid": "0",
                   "params": "",
                   "ipmi_sensor": "",
                   "authtype": "0",
                   "username": "",
                   "password": "",
                   "publickey": "",
                   "privatekey": "",
                   "flags": "0",
                   "interfaceid": "0",
                   "port": "",
                   "description": "",
                   "inventory_link": "0",
                   "lifetime": "30d",
                   "snmpv3_authprotocol": "0",
                   "snmpv3_privprotocol": "0",
                   "state": "0",
                   "snmpv3_contextname": "",
                   "evaltype": "0",
                   "master_itemid": "25545",
                   "jmx_endpoint": "",
                   "timeout": "3s",
                   "url": "",
                   "query_fields": [],
                   "posts": "",
                   "status_codes": "200",
                   "follow_redirects": "1",
                   "post_type": "0",
                   "http_proxy": "",
                   "headers": [],
                   "retrieve_mode": "0",
                   "request_method": "0",
                   "output_format": "0",
                   "ssl_cert_file": "",
                   "ssl_key_file": "",
                   "ssl_key_password": "",
                   "verify_peer": "0",
                   "verify_host": "0",
                   "allow_traps": "0",
                   "lastclock": "0",
                   "lastns": "0",
                   "lastvalue": "0",
                   "prevvalue": "0"
               },
               {
                   "itemid": "25555",
                   "type": "18",
                   "snmp_community": "",
                   "snmp_oid": "",
                   "hostid": "10116",
                   "name": "Hours",
                   "key_": "apache.status.uptime.hours",
                   "delay": "0",
                   "history": "90d",
                   "trends": "365d",
                   "status": "0",
                   "value_type": "3",
                   "trapper_hosts": "",
                   "units": "",
                   "snmpv3_securityname": "",
                   "snmpv3_securitylevel": "0",
                   "snmpv3_authpassphrase": "",
                   "snmpv3_privpassphrase": "",
                   "formula": "",
                   "error": "",
                   "logtimefmt": "",
                   "templateid": "0",
                   "valuemapid": "0",
                   "params": "",
                   "ipmi_sensor": "",
                   "authtype": "0",
                   "username": "",
                   "password": "",
                   "publickey": "",
                   "privatekey": "",
                   "flags": "0",
                   "interfaceid": "0",
                   "port": "",
                   "description": "",
                   "inventory_link": "0",
                   "lifetime": "30d",
                   "snmpv3_authprotocol": "0",
                   "snmpv3_privprotocol": "0",
                   "state": "0",
                   "snmpv3_contextname": "",
                   "evaltype": "0",
                   "master_itemid": "25545",
                   "jmx_endpoint": "",
                   "timeout": "3s",
                   "url": "",
                   "query_fields": [],
                   "posts": "",
                   "status_codes": "200",
                   "follow_redirects": "1",
                   "post_type": "0",
                   "http_proxy": "",
                   "headers": [],
                   "retrieve_mode": "0",
                   "request_method": "0",
                   "output_format": "0",
                   "ssl_cert_file": "",
                   "ssl_key_file": "",
                   "ssl_key_password": "",
                   "verify_peer": "0",
                   "verify_host": "0",
                   "allow_traps": "0",
                   "lastclock": "0",
                   "lastns": "0",
                   "lastvalue": "0",
                   "prevvalue": "0"
               }
           ],
           "id": 1
       }

Поиск элемента данных HTTP агента

Поиск элемента данных HTTP агента с типом post тела XML у конкретного id узла сети.

Запрос:

{
           "jsonrpc": "2.0",
           "method": "item.get",
           "params": {
               "hostids": "10255",
               "filter": {
                   "type": "19",
                   "post_type": "3"
               }
           },
           "id": 3,
           "auth": "d678e0b85688ce578ff061bd29a20d3b"
       }

Ответ:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "itemid": "28252",
                   "type": "19",
                   "snmp_community": "",
                   "snmp_oid": "",
                   "hostid": "10255",
                   "name": "template item",
                   "key_": "ti",
                   "delay": "30s",
                   "history": "90d",
                   "trends": "365d",
                   "status": "0",
                   "value_type": "3",
                   "trapper_hosts": "",
                   "units": "",
                   "snmpv3_securityname": "",
                   "snmpv3_securitylevel": "0",
                   "snmpv3_authpassphrase": "",
                   "snmpv3_privpassphrase": "",
                   "formula": "",
                   "error": "",
                   "logtimefmt": "",
                   "templateid": "0",
                   "valuemapid": "0",
                   "params": "",
                   "ipmi_sensor": "",
                   "authtype": "0",
                   "username": "",
                   "password": "",
                   "publickey": "",
                   "privatekey": "",
                   "flags": "0",
                   "interfaceid": "0",
                   "port": "",
                   "description": "",
                   "inventory_link": "0",
                   "lifetime": "30d",
                   "snmpv3_authprotocol": "0",
                   "snmpv3_privprotocol": "0",
                   "state": "0",
                   "snmpv3_contextname": "",
                   "evaltype": "0",
                   "jmx_endpoint": "",
                   "master_itemid": "0",
                   "timeout": "3s",
                   "url": "localhost",
                   "query_fields": [
                       {
                           "mode": "xml"
                       }
                   ],
                   "posts": "<body>\r\n<![CDATA[{$MACRO}<foo></bar>]]>\r\n</body>",
                   "status_codes": "200",
                   "follow_redirects": "0",
                   "post_type": "3",
                   "http_proxy": "",
                   "headers": [],
                   "retrieve_mode": "1",
                   "request_method": "3",
                   "output_format": "0",
                   "ssl_cert_file": "",
                   "ssl_key_file": "",
                   "ssl_key_password": "",
                   "verify_peer": "0",
                   "verify_host": "0",
                   "allow_traps": "0",
                   "lastclock": "0",
                   "lastns": "0",
                   "lastvalue": "0",
                   "prevvalue": "0"
               }
           ],
           "id": 3
       }

Получение элементов данных с правилами предобработки

Получение всех элементов данных и их правил предобработки с узла сети с ID "10254".

Запрос:

{
           "jsonrpc": "2.0",
           "method": "item.get",
           "params": {
               "output": ["itemid", "name", "key_"],
               "selectPreprocessing": "extend",
               "hostids": "10254"
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Ответ:

{
           "jsonrpc": "2.0",
           "result": {
               "itemid": "23865",
               "name": "http agent example JSON",
               "key_": "json",
               "preprocessing": [
                   {
                       "type": "12",
                       "params": "$.random",
                       "error_handler": "1",
                       "error_handler_params": ""
                   }
               ]
           },
           "id": 1
       }

Смотрите также

Исходный код

CItem::get() в frontends/php/include/classes/api/services/CItem.php.