целое число/массив discoveryrule.get(объект параметры)
Этот метод позволяет получать правила LLD в соответствии с заданными параметрами.
(объект) Параметры задают желаемый вывод.
Этот метод поддерживает следующие параметры.
| Параметр | Тип | Описание | 
|---|---|---|
| itemids | строка/массив | Возврат правил LLD только с заданными ID. | 
| hostids | строка/массив | Возврат только тех правил LLD, которые принадлежат заданным узлам сети. | 
| inherited | логический | Если задано значение true, возвращать только те правила LLD, которые унаследованы из шаблона. | 
       
| interfaceids | строка/массив | Возврат только тех правил LLD, которые используют заданные интерфейсы узлов сети. | 
| monitored | логический | Если задано значение true, возвращать только активированные правила LLD, которые принадлежат узлам сети под наблюдением. | 
       
| templated | логический | Если задано значение true, возвращать только те правила LLD, которые принадлежат шаблонам. | 
       
| templateids | строка/массив | Возврат только тех правил LLD, которые принадлежат заданным шаблонам. | 
| selectFilter | запрос | Возврат фильтра, который используется правилом LLD, в свойстве filter. | 
       
| selectGraphs | запрос | Возврат прототипов графиков, которые принадлежат правилу LLD, в свойстве graphs.Поддерживается count. | 
       
| selectHostPrototypes | запрос | Возврат прототипов узлов сети, которые принадлежат правилу обнаружения, в свойстве hostPrototypes.Поддерживается count. | 
       
| selectHosts | запрос | Возврат узла сети, которому принадлежит правило LLD, в виде массива в свойстве hosts. | 
       
| selectItems | запрос | Возврат прототипов элементов данных, которые принадлежат правилу LLD, в свойстве items.Поддерживается count. | 
       
| selectTriggers | запрос | Возврат прототипов триггеров, которые принадлежат правилу обнаружения, в свойстве triggers.Поддерживается count. | 
       
| filter | объект | Возврат только тех результатов, которые в точности соответствуют заданному фильтру. Принимает массив, где ключи являются именами свойств и значения, которые являются либо одним значением, либо массивом сопоставляемых значений. Поддерживает дополнительные фильтры: host - техническое имя узла сети, которому принадлежит правило LLD. | 
       
| limitSelects | целое число | Ограничение количества записей, возвращаемых подзапросами. Применимо только к следующим подзапросам: selctItems;selectGraphs;selectTriggers. | 
       
| sortfield | строка/массив | Сортировка результата в соответствии с заданными свойствами. Возможные значения: itemid, name, key_, delay, type и status. | 
       
| countOutput | флаг | Эти параметры являются общими для всех методов get и они описаны в справочных комментариях. | 
       
| editable | логический | |
| excludeSearch | флаг | |
| limit | целое число | |
| output | запрос | |
| preservekeys | флаг | |
| search | объект | |
| searchByAny | логический | |
| searchWildcardsEnabled | логический | |
| sortorder | строка/массив | |
| startSearch | флаг | 
(целое число/массив) Возвращает либо:
countOutput.Получение всех правил обнаружения с узла сети "10202".
Запрос:
{
           "jsonrpc": "2.0",
           "method": "discoveryrule.get",
           "params": {
               "output": "extend",
               "hostids": "10202"
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }Ответ:
{
           "jsonrpc": "2.0",
           "result": [
               {
                   "itemid": "27425",
                   "type": "0",
                   "snmp_community": "",
                   "snmp_oid": "",
                   "hostid": "10202",
                   "name": "Network interface discovery",
                   "key_": "net.if.discovery",
                   "delay": "3600",
                   "state": "0",
                   "status": "0",
                   "trapper_hosts": "",
                   "snmpv3_securityname": "",
                   "snmpv3_securitylevel": "0",
                   "snmpv3_authpassphrase": "",
                   "snmpv3_privpassphrase": "",
                   "error": "",
                   "templateid": "22444",
                   "delay_flex": "",
                   "params": "",
                   "ipmi_sensor": "",
                   "authtype": "0",
                   "username": "",
                   "password": "",
                   "publickey": "",
                   "privatekey": "",
                   "interfaceid": "119",
                   "port": "",
                   "description": "Discovery of network interfaces as defined in global regular expression \"Network interfaces for discovery\".",
                   "lifetime": "30",
                   "snmpv3_authprotocol": "0",
                   "snmpv3_privprotocol": "0"
               },
               {
                   "itemid": "27426",
                   "type": "0",
                   "snmp_community": "",
                   "snmp_oid": "",
                   "hostid": "10202",
                   "name": "Mounted filesystem discovery",
                   "key_": "vfs.fs.discovery",
                   "delay": "3600",
                   "state": "0",
                   "status": "0",
                   "trapper_hosts": "",
                   "snmpv3_securityname": "",
                   "snmpv3_securitylevel": "0",
                   "snmpv3_authpassphrase": "",
                   "snmpv3_privpassphrase": "",
                   "error": "",
                   "templateid": "22450",
                   "delay_flex": "",
                   "params": "",
                   "ipmi_sensor": "",
                   "authtype": "0",
                   "username": "",
                   "password": "",
                   "publickey": "",
                   "privatekey": "",
                   "interfaceid": "119",
                   "port": "",
                   "description": "Discovery of file systems of different types as defined in global regular expression \"File systems for discovery\".",
                   "lifetime": "30",
                   "snmpv3_authprotocol": "0",
                   "snmpv3_privprotocol": "0"
               }
           ],
           "id": 2
       }Получение имени правила LLD "24681" и условий фильтрации этого правила. Фильтр использует "и" тип вычисления, таким образом свойство formula пустое и eval_formula генерируется автоматически.
Запрос:
{
           "jsonrpc": "2.0",
           "method": "discoveryrule.get",
           "params": {
               "output": [
                   "name"
               ],
               "selectFilter": "extend",
               "itemids": ["24681"]
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }Ответ:
{
           "jsonrpc": "2.0",
           "result": [
               {
                   "itemid": "24681",
                   "name": "Filtered LLD rule",
                   "filter": {
                       "evaltype": "1",
                       "formula": "",
                       "conditions": [
                           {
                               "macro": "{#MACRO1}",
                               "value": "@regex1",
                               "operator": "8",
                               "formulaid": "A"
                           },
                           {
                               "macro": "{#MACRO2}",
                               "value": "@regex2",
                               "operator": "8",
                               "formulaid": "B"
                           },
                           {
                               "macro": "{#MACRO3}",
                               "value": "@regex3",
                               "operator": "8",
                               "formulaid": "C"
                           }
                       ],
                       "eval_formula": "A and B and C"
                   }
               }
           ],
           "id": 1
       }CDiscoveryRule::get() в frontends/php/include/classes/api/services/CDiscoveryRule.php.