itemprototype.get
Описание
integer/array itemprototype.get(параметры объекта)
Этот метод позволяет получать прототипы элементов данных в соответствии с заданными параметрами.
Этот метод доступен пользователям любого типа. Разрешения на вызов метода можно отозвать в настройках ролей пользователя. Дополнительную информацию см. в разделе Роли пользователей.
Параметры
(object) Параметры, определяющие требуемый результат.
Метод поддерживает следующие параметры.
| Parameter | Type | Description |
|---|---|---|
| discoveryids | ID/array | Возвращать только прототипы элементов данных, которые принадлежат указанным правилам LLD. |
| graphids | ID/array | Возвращать только прототипы элементов данных, которые используются в указанных прототипах графиков. |
| hostids | ID/array | Возвращать только прототипы элементов данных, которые принадлежат указанным узлам сети. |
| inherited | boolean | Если задано true, возвращать только прототипы элементов данных, унаследованные от шаблона. |
| itemids | ID/array | Возвращать только прототипы элементов данных с указанными ID. |
| monitored | boolean | Если задано true, возвращать только включенные прототипы элементов данных, которые принадлежат контролируемым узлам сети. |
| templated | boolean | Если задано true, возвращать только прототипы элементов данных, которые принадлежат шаблонам. |
| templateids | ID/array | Возвращать только прототипы элементов данных, которые принадлежат указанным шаблонам. |
| triggerids | ID/array | Возвращать только прототипы элементов данных, которые используются в указанных прототипах триггеров. |
| selectDiscoveryData | query | Возвращать свойство discoveryData с данными объекта обнаружения прототипа элемента данных. Объект обнаружения прототипа элемента данных связывает обнаруженный прототип элемента данных с прототипом элемента данных, из которого он был обнаружен.Он имеет следующие свойства: parent_itemid - (string) ID прототипа элемента данных, из которого был создан прототип элемента данных;key_ - (string) ключ прототипа элемента данных;status - (int) статус обнаружения прототипа элемента данных:0 - (по умолчанию) прототип элемента данных обнаружен, 1 - прототип элемента данных больше не обнаружен; ts_delete - (timestamp) время, когда прототип элемента данных, который больше не обнаружен, будет удален;ts_disable - (timestamp) время, когда прототип элемента данных, который больше не обнаружен, будет отключен;disable_source - (int) признак того, был ли прототип элемента данных отключен правилом LLD или вручную:0 - (по умолчанию) отключен автоматически, 1 - отключен правилом LLD. |
| selectDiscoveryRule | query | Возвращать свойство discoveryRule с правилом низкоуровневого обнаружения, к которому принадлежит прототип элемента данных. |
| selectDiscoveryRulePrototype | query | Возвращать свойство discoveryRulePrototype с родительским прототипом правила LLD, к которому принадлежит прототип элемента данных. |
| selectGraphs | query | Возвращать свойство graphs с прототипами графиков, в которых используется прототип элемента данных.Поддерживает count. |
| selectHosts | query | Возвращать свойство hosts с массивом узлов сети, к которым принадлежит прототип элемента данных. |
| selectTags | query | Возвращать теги прототипа элемента данных в свойстве tags. |
| selectTriggers | query | Возвращать свойство triggers с прототипами триггеров, в которых используется прототип элемента данных.Поддерживает count. |
| selectPreprocessing | query | Возвращать свойство preprocessing с параметрами предварительной обработки прототипа элемента данных. |
| selectValueMap | query | Возвращать свойство valuemap с картой значений прототипа элемента данных. |
| filter | object | Возвращать только те результаты, которые в точности соответствуют заданному фильтру. Принимает объект, где ключи — это имена свойств, а значения — либо одно значение, либо массив значений, с которыми выполняется сравнение. Не поддерживает свойства с типом данных text.Поддерживает дополнительные свойства: host - техническое имя узла сети, к которому принадлежит прототип элемента данных. |
| limitSelects | integer | Ограничивает количество записей, возвращаемых подвыборками. Применяется к следующим подвыборкам: selectGraphs - результаты будут отсортированы по name;selectTriggers - результаты будут отсортированы по description. |
| sortfield | string/array | Сортировать результат по указанным свойствам. Возможные значения: itemid, name, key_, delay, type, status, history, trends, discovered. |
| countOutput | boolean | Эти параметры описаны в справочном комментарии. |
| editable | boolean | |
| excludeSearch | boolean | |
| limit | integer | |
| output | query | |
| preservekeys | boolean | |
| search | object | |
| searchByAny | boolean | |
| searchWildcardsEnabled | boolean | |
| sortorder | string/array | |
| startSearch | boolean |
Возвращаемые значения
(целое число/массив) Возвращает либо:
- · массив объектов;
- · количество извлеченных объектов, если использовался параметр
countOutput.
Примеры
Получение прототипов элементов данных из правила LLD
Получить все прототипы элементов данных для указанного ID правила LLD.
{
"jsonrpc": "2.0",
"method": "itemprototype.get",
"params": {
"output": "extend",
"discoveryids": "27426"
},
"id": 1
}
Ответ:
{
"jsonrpc": "2.0",
"result": [
{
"itemid": "23077",
"type": "0",
"snmp_oid": "",
"hostid": "10079",
"name": "Входящий сетевой трафик на en0",
"key_": "net.if.in[en0]",
"delay": "1m",
"history": "1w",
"trends": "365d",
"status": "0",
"value_type": "3",
"trapper_hosts": "",
"units": "bps",
"logtimefmt": "",
"templateid": "0",
"valuemapid": "0",
"params": "",
"ipmi_sensor": "",
"authtype": "0",
"username": "",
"password": "",
"publickey": "",
"privatekey": "",
"flags": "2",
"interfaceid": "0",
"description": "",
"evaltype": "0",
"jmx_endpoint": "",
"master_itemid": "0",
"timeout": "",
"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",
"discover": "0",
"uuid": "",
"parameters": []
},
{
"itemid": "10010",
"type": "0",
"snmp_oid": "",
"hostid": "10001",
"name": "Нагрузка на процессор (среднее за 1 минуту на ядро)",
"key_": "system.cpu.load[percpu,avg1]",
"delay": "1m",
"history": "1w",
"trends": "365d",
"status": "0",
"value_type": "0",
"trapper_hosts": "",
"units": "",
"logtimefmt": "",
"templateid": "0",
"valuemapid": "0",
"params": "",
"ipmi_sensor": "",
"authtype": "0",
"username": "",
"password": "",
"publickey": "",
"privatekey": "",
"flags": "2",
"interfaceid": "0",
"description": "Нагрузка на процессор вычисляется как загрузка CPU системы, деленная на количество ядер CPU.",
"evaltype": "0",
"jmx_endpoint": "",
"master_itemid": "0",
"timeout": "",
"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",
"discover": "0",
"uuid": "",
"parameters": []
}
],
"id": 1
}
Поиск зависимого элемента данных
Найдите один зависимый элемент данных для указанного ID элемента данных.
{
"jsonrpc": "2.0",
"method": "item.get",
"params": {
"output": "extend",
"filter": {
"type": 18,
"master_itemid": "25545"
},
"limit": "1"
},
"id": 1
}
Ответ:
{
"jsonrpc": "2.0",
"result": [
{
"itemid": "25547",
"type": "18",
"snmp_oid": "",
"hostid": "10116",
"name": "Seconds",
"key_": "apache.status.uptime.seconds",
"delay": "0",
"history": "90d",
"trends": "365d",
"status": "0",
"value_type": "3",
"trapper_hosts": "",
"units": "",
"logtimefmt": "",
"templateid": "0",
"valuemapid": "0",
"params": "",
"ipmi_sensor": "",
"authtype": "0",
"username": "",
"password": "",
"publickey": "",
"privatekey": "",
"flags": "0",
"interfaceid": "0",
"description": "",
"evaltype": "0",
"master_itemid": "25545",
"jmx_endpoint": "",
"timeout": "",
"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",
"discover": "0",
"uuid": "",
"parameters": []
}
],
"id": 1
}
Поиск прототипа элемента данных HTTP-агента
Найдите прототип элемента данных HTTP-агента с методом запроса HEAD для указанного ID узла сети.
{
"jsonrpc": "2.0",
"method": "itemprototype.get",
"params": {
"hostids": "10254",
"filter": {
"type": 19,
"request_method": 3
}
},
"id": 1
}
Ответ:
{
"jsonrpc": "2.0",
"result": [
{
"itemid": "28257",
"type": "19",
"snmp_oid": "",
"hostid": "10254",
"name": "discovered",
"key_": "item[{#INAME}]",
"delay": "{#IUPDATE}",
"history": "90d",
"trends": "30d",
"status": "0",
"value_type": "3",
"trapper_hosts": "",
"units": "",
"logtimefmt": "",
"templateid": "28255",
"valuemapid": "0",
"params": "",
"ipmi_sensor": "",
"authtype": "0",
"username": "",
"password": "",
"publickey": "",
"privatekey": "",
"flags": "2",
"interfaceid": "2",
"description": "",
"evaltype": "0",
"jmx_endpoint": "",
"master_itemid": "0",
"timeout": "",
"url": "{#IURL}",
"query_fields": [],
"posts": "",
"status_codes": "",
"follow_redirects": "0",
"post_type": "0",
"http_proxy": "",
"headers": [],
"retrieve_mode": "0",
"request_method": "3",
"output_format": "0",
"ssl_cert_file": "",
"ssl_key_file": "",
"ssl_key_password": "",
"verify_peer": "0",
"verify_host": "0",
"allow_traps": "0",
"discover": "0",
"uuid": "",
"parameters": []
}
],
"id": 1
}
См. также
Источник
CItemPrototype::get() в ui/include/classes/api/services/CItemPrototype.php.