itemprototype.get

Описание

integer/array itemprototype.get(object parameters)

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

Этот метод доступен пользователям любого типа. Разрешения на вызов метода могут быть отозваны в настройках роли пользователя. См. Роли пользователей для получения дополнительной информации.

Параметры

(object) Параметры, определяющие требуемый результат.

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

Parameter Type Description
discoveryids ID/array Возвращать только прототипы элементов данных, принадлежащие указанным правилам LLD.
graphids ID/array Возвращать только прототипы элементов данных, используемые в указанных прототипах графиков.
hostids ID/array Возвращать только прототипы элементов данных, принадлежащие указанным узлам сети.
inherited boolean Если задано значение true, возвращать только прототипы элементов данных, унаследованные от шаблона.
itemids ID/array Возвращать только прототипы элементов данных с указанными идентификаторами.
monitored boolean Если задано значение true, возвращать только включенные прототипы элементов данных, принадлежащие отслеживаемым узлам сети.
templated boolean Если задано значение true, возвращать только прототипы элементов данных, принадлежащие шаблонам.
templateids ID/array Возвращать только прототипы элементов данных, принадлежащие указанным шаблонам.
triggerids ID/array Возвращать только прототипы элементов данных, используемые в указанных прототипах триггеров.
selectDiscoveryData query Возвращать свойство discoveryData с данными объекта обнаружения прототипа элемента данных. Объект обнаружения прототипа элемента данных связывает обнаруженный прототип элемента данных с прототипом элемента данных, на основе которого он был обнаружен.

Он имеет следующие свойства:
parent_itemid - (string) идентификатор прототипа элемента данных, на основе которого был создан данный прототип элемента данных;
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.

Поддерживает дополнительные свойства:
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": "Загрузка процессора рассчитывается как загрузка CPU системы, деленная на количество ядер CPU.",
            "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.