itemprototype.get
Описание
integer/array itemprototype.get(параметры объекта)
Этот метод позволяет получать прототипы элементов данных в соответствии с заданными параметрами.
Этот метод доступен пользователям любого типа. Разрешения на вызов метода можно отозвать в настройках ролей пользователя. Дополнительную информацию см. в разделе Роли пользователей.
Параметры
(object) Параметры, определяющие желаемый вывод.
Метод поддерживает следующие параметры.
| Параметр | Тип | Описание |
|---|---|---|
| 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 с массивом узлов сети, которым принадлежит прототип элемента данных. |
| selectInheritedTags | query | Возвращать свойство inheritedTags с тегами, находящимися на шаблоне/узле сети/связанных шаблонах. |
| selectTags | query | Возвращать теги прототипа элемента данных в свойстве tags. |
| selectTriggers | query | Возвращать свойство triggers с прототипами триггеров, в которых используется прототип элемента данных.Поддерживает count. |
| selectPreprocessing | query | Возвращать свойство preprocessing с параметрами предобработки прототипа элемента данных. |
| selectValueMap | query | Возвращать свойство valuemap с картой значений прототипа элемента данных. |
| filter | object | Возвращать только те результаты, которые точно соответствуют заданному фильтру. Принимает объект, где ключи — это имена свойств, а значения — либо одиночное значение, либо массив значений для сопоставления. Не поддерживает свойства типа данных text data type.Поддерживает дополнительные свойства: 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": "Incoming network traffic on en0",
"key_": "net.if.in[en0]",
"delay": "1m",
"history": "1w",
"trends": "365d",
"status": "0",
"value_type": "3",
"trapper_hosts": "",
"units": "bps",
"formula": "",
"logtimefmt": "",
"templateid": "0",
"valuemapid": "0",
"params": "",
"ipmi_sensor": "",
"authtype": "0",
"username": "",
"password": "",
"publickey": "",
"privatekey": "",
"flags": "2",
"interfaceid": "0",
"description": "",
"inventory_link": "0",
"lifetime": "7d",
"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": "",
"lifetime_type": "0",
"enabled_lifetime_type": "2",
"enabled_lifetime": "0",
"parameters": []
},
{
"itemid": "10010",
"type": "0",
"snmp_oid": "",
"hostid": "10001",
"name": "Processor load (1 min average per core)",
"key_": "system.cpu.load[percpu,avg1]",
"delay": "1m",
"history": "1w",
"trends": "365d",
"status": "0",
"value_type": "0",
"trapper_hosts": "",
"units": "",
"formula": "",
"logtimefmt": "",
"templateid": "0",
"valuemapid": "0",
"params": "",
"ipmi_sensor": "",
"authtype": "0",
"username": "",
"password": "",
"publickey": "",
"privatekey": "",
"flags": "2",
"interfaceid": "0",
"description": "The processor load is calculated as system CPU load divided by number of CPU cores.",
"inventory_link": "0",
"lifetime": "7d",
"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": "",
"lifetime_type": "0",
"enabled_lifetime_type": "2",
"enabled_lifetime": "0",
"parameters": []
}
],
"id": 1
}
Поиск зависимого элемента данных
Найдите один зависимый элемент данных для указанного ID элемента данных.
{
"jsonrpc": "2.0",
"method": "itemprototype.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": "",
"formula": "",
"logtimefmt": "",
"templateid": "0",
"valuemapid": "0",
"params": "",
"ipmi_sensor": "",
"authtype": "0",
"username": "",
"password": "",
"publickey": "",
"privatekey": "",
"flags": "0",
"interfaceid": "0",
"description": "",
"inventory_link": "0",
"lifetime": "7d",
"evaltype": "0",
"jmx_endpoint": "",
"master_itemid": "25545",
"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": "",
"lifetime_type": "0",
"enabled_lifetime_type": "2",
"enabled_lifetime": "0",
"parameters": []
}
],
"id": 1
}
Найти прототип элемента данных HTTP agent
Найти прототип элемента данных HTTP agent с методом запроса 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": "",
"formula": "",
"logtimefmt": "",
"templateid": "28255",
"valuemapid": "0",
"params": "",
"ipmi_sensor": "",
"authtype": "0",
"username": "",
"password": "",
"publickey": "",
"privatekey": "",
"flags": "2",
"interfaceid": "2",
"description": "",
"inventory_link": "0",
"lifetime": "7d",
"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": "",
"lifetime_type": "0",
"enabled_lifetime_type": "2",
"enabled_lifetime": "0",
"parameters": []
}
],
"id": 1
}
См. также
Источник
CItemPrototype::get() в ui/include/classes/api/services/CItemPrototype.php.