drule.get

Опис

integer/array drule.get(object parameters)

Метод дозволяє отримати правила виявлення за заданими параметрами.

Цей спосіб доступний користувачам будь-якого типу. Дозволи на виклик методу можна скасувати в налаштуваннях ролі користувача. Див. Ролі користувача для отримання додаткової інформації.

Параметри

(object) Параметри, що визначають бажаний результат.

Метод підтримує такі параметри.

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

Підтримує count.
selectDHosts запит Повертає властивість dhosts із виявленими хостами, створеними за правилом виявлення.

Підтримує count.
limitSelects ціле число Обмежує кількість записів, що повертаються підвиборами.

Застосовується до наступних підвиборів:
selectDChecks - результати будуть відсортовані за dcheckid;
selectDHosts - результати буде відсортовано за dhostsid.
sortfield рядок/масив Відсортуйте результат за заданими властивостями.

Можливі значення: druleid і name.
countOutput boolean Ці параметри, які є спільними для всіх методів get, детально описані в довідковому коментарі.
редагований логічний
excludeSearch boolean
фільтр об'єкт
ліміт ціле
вивід запит
preservekeys boolean
пошук об'єкт
searchByAny логічний
увімкнено знаки підстановки логічний
порядок сортування рядок/масив
почати пошук логічний

Повернуті значення

(integer/array) Повертає або:

  • масив об'єктів;
  • кількість отриманих об'єктів, якщо використовувався параметр 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.