Это перевод страницы документации с английского языка. Помогите нам сделать его лучше.

drule.get

Описание

integer/array drule.get(параметры объектов)

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

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

Параметры

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

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

Параметр Тип Описание
dhostids строка/массив Возврат только тех правил обнаружения, которые создали заданные обнаруженные узлы сети.
druleids строка/массив Возврат правил обнаружения только с заданными ID.
dserviceids строка/массив Возврат только тех правил обнаружения, которые создали заданные обнаруженные сервисы.
selectDChecks запрос Возврат проверок обнаружения, которые используются правилом обнаружения, в свойстве dchecks.

Поддерживает count.
selectDHosts запрос Возврат обнаруженных узлов сети, которые были созданы правилом обнаружения, в свойстве dhosts.

Поддерживает count.
limitSelects целое число Ограничение количества записей, возвращаемых подзапросами.

Применимо только к следующим подзапросам:
selectDChecks - результаты отсортируются по dcheckid;
selectDHosts - результаты отсортируются по dhostsid.
sortfield строка/массив Сортировка результата в соответствии с заданными свойствами.

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

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

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

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

Примеры

Получение всех правил обнаружения

Получить все настроенные правила обнаружения и используемые ими проверки обнаружения.

Запрос:

{
           "jsonrpc": "2.0",
           "method": "drule.get",
           "params": {
               "output": "extend",
               "selectDChecks": "extend"
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Ответ:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "druleid": "2",
                   "proxy_hostid": "0",
                   "name": "Local network",
                   "iprange": "192.168.3.1-255",
                   "delay": "5s",
                   "nextcheck": "1348754327",
                   "status": "0",
                   "dchecks": [
                       {
                           "dcheckid": "7",
                           "druleid": "2",
                           "type": "3",
                           "key_": "",
                           "snmp_community": "",
                           "ports": "21",
                           "snmpv3_securityname": "",
                           "snmpv3_securitylevel": "0",
                           "snmpv3_authpassphrase": "",
                           "snmpv3_privpassphrase": "",
                           "uniq": "0",
                           "snmpv3_authprotocol": "0",
                           "snmpv3_privprotocol": "0",
                           "host_source": "1",
                           "name_source": "0"                     
                       },
                       {
                           "dcheckid": "8",
                           "druleid": "2",
                           "type": "4",
                           "key_": "",
                           "snmp_community": "",
                           "ports": "80",
                           "snmpv3_securityname": "",
                           "snmpv3_securitylevel": "0",
                           "snmpv3_authpassphrase": "",
                           "snmpv3_privpassphrase": "",
                           "uniq": "0",
                           "snmpv3_authprotocol": "0",
                           "snmpv3_privprotocol": "0",
                           "host_source": "1",
                           "name_source": "0"                    
                       }
                   ]
               },
               {
                   "druleid": "6",
                   "proxy_hostid": "0",
                   "name": "Zabbix agent discovery",
                   "iprange": "192.168.1.1-255",
                   "delay": "1h",
                   "nextcheck": "0",
                   "status": "0",
                   "dchecks": [
                       {
                           "dcheckid": "10",
                           "druleid": "6",
                           "type": "9",
                           "key_": "system.uname",
                           "snmp_community": "",
                           "ports": "10050",
                           "snmpv3_securityname": "",
                           "snmpv3_securitylevel": "0",
                           "snmpv3_authpassphrase": "",
                           "snmpv3_privpassphrase": "",
                           "uniq": "0",
                           "snmpv3_authprotocol": "0",
                           "snmpv3_privprotocol": "0",
                           "host_source": "2",
                           "name_source": "3"                    
                       }
                   ]
               }
           ],
           "id": 1
       }

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

Источник

CDRule::get() в ui/include/classes/api/services/CDRule.php.