action.create

Опис

object action.create(object/array actions)

Цей метод дозволяє створювати нові дії.

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

Параметри

(object/array) Дії для створення.

На додаток до стандартних властивостей дії, метод приймає наступні параметри.

Parameter Type Description
filter object Дія фільтр об’єкт для дії.
operations array Дія операції, щоб створити для дії.
recovery_operations array Дія операції відновлення, яку потрібно створити для дії.
update_operations array Дія операції оновлення, яку потрібно створити для дії.

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

(object) Повертає об’єкт, що містить ідентифікатори створених дій у властивості actionids. Порядок повернених ідентифікаторів відповідає порядку виконаних дій.

Приклади

Створіть тригерну дію

Створіть дію, яка виконуватиметься, коли тригер із хосту "10084", який містить слово "пам'ять" у своєму імені, переходить у стан проблеми. Дія повинна спочатку надіслати повідомлення всім користувачам у групі користувачів «7». Якщо подію не буде вирішено протягом 4 хвилин, буде запущено сценарій «3» на всіх хостах у групі «2». Під час відновлення тригера він сповістить усіх користувачів, які раніше отримували будь-які повідомлення щодо проблеми. Після оновлення тригера повідомлення з настроюваною темою та основним текстом буде надіслано всім, хто залишив підтвердження та коментарі через усі типи медіа.

Запит:

{
           "jsonrpc": "2.0",
           "method": "action.create",
           "params": {
               "name": "Trigger action",
               "eventsource": 0,
               "status": 0,
               "esc_period": "2m",
               "filter": {
                   "evaltype": 0,
                   "conditions": [
                       {
                           "conditiontype": 1,
                           "operator": 0,
                           "value": "10084"
                       },
                       {
                           "conditiontype": 3,
                           "operator": 2,
                           "value": "memory"
                       }
                   ]
               },
               "operations": [
                   {
                       "operationtype": 0,
                       "esc_period": "0s",
                       "esc_step_from": 1,
                       "esc_step_to": 2,
                       "evaltype": 0,
                       "opmessage_grp": [
                           {
                               "usrgrpid": "7"
                           }
                       ],
                       "opmessage": {
                           "default_msg": 1,
                           "mediatypeid": "1"
                       }
                   },
                   {
                       "operationtype": 1,
                       "esc_step_from": 3,
                       "esc_step_to": 4,
                       "evaltype": 0,
                       "opconditions": [
                           {
                               "conditiontype": 14,
                               "operator": 0,
                               "value": "0"
                           }
                       ],
                       "opcommand_grp": [
                           {
                               "groupid": "2"
                           }
                       ],
                       "opcommand": {
                           "scriptid": "3"
                       }
                   }
               ],
               "recovery_operations": [
                   {
                       "operationtype": "11",
                       "opmessage": {
                           "default_msg": 1
                       }
                   }    
               ],
               "update_operations": [
                   {
                       "operationtype": "12",
                       "opmessage": {
                           "default_msg": 0,
                           "message": "Custom update operation message body",
                           "subject": "Custom update operation message subject"
                       }
                   }
               ],
               "pause_suppressed": "0",
               "notify_if_canceled": "0"
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }
Copy
✔ Copied

Відповідь:

{
           "jsonrpc": "2.0",
           "result": {
               "actionids": [
                   "17"
               ]
           },
           "id": 1
       }
Copy
✔ Copied

Створити дію виявлення

Створіть дію, яка зв’яже виявлені хости з шаблоном «10091».

Запит:

{
           "jsonrpc": "2.0",
           "method": "action.create",
           "params": {
               "name": "Discovery action",
               "eventsource": 1,
               "status": 0,
               "filter": {
                   "evaltype": 0,
                   "conditions": [
                       {
                           "conditiontype": 21,
                           "operator": 0,
                           "value": "1"
                       },
                       {
                           "conditiontype": 10,
                           "operator": 0,
                           "value": "2"
                       }
                   ]
               },
               "operations": [
                   {
                       "operationtype": 6,
                       "optemplate": [
                           {
                               "templateid": "10091"
                           }
                       ]
                   }
               ]
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }
Copy
✔ Copied

Відповідь:

{
           "jsonrpc": "2.0",
           "result": {
               "actionids": [
                   "18"
               ]
           },
           "id": 1
       }
Copy
✔ Copied

Використання спеціального фільтра виразів

Створіть дію тригера, яка використовуватиме спеціальну умову фільтра. Дія має надсилати повідомлення для кожного тригера з серйозністю, вищою або рівною "Попередження" для хостів "10084" і "10106". Ідентифікатори формул "A", "B" і "C" вибрано довільно.

Запит:

{
           "jsonrpc": "2.0",
           "method": "action.create",
           "params": {
               "name": "Trigger action",
               "eventsource": 0,
               "status": 0,
               "esc_period": "2m",
               "filter": {
                   "evaltype": 3,
                   "formula": "A and (B or C)",
                   "conditions": [
                       {
                           "conditiontype": 4,
                           "operator": 5,
                           "value": "2",
                           "formulaid": "A"
                       },
                       {
                           "conditiontype": 1,
                           "operator": 0,
                           "value": "10084",
                           "formulaid": "B"
                       },
                       {
                           "conditiontype": 1,
                           "operator": 0,
                           "value": "10106",
                           "formulaid": "C"
                       }
                   ]
               },
               "operations": [
                   {
                       "operationtype": 0,
                       "esc_period": "0s",
                       "esc_step_from": 1,
                       "esc_step_to": 2,
                       "evaltype": 0,
                       "opmessage_grp": [
                           {
                               "usrgrpid": "7"
                           }
                       ],
                       "opmessage": {
                           "default_msg": 1,
                           "mediatypeid": "1"
                       }
                   }
               ],
               "pause_suppressed": "0",
               "notify_if_canceled": "0"
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }
Copy
✔ Copied

Відповідь:

{
           "jsonrpc": "2.0",
           "result": {
               "actionids": [
                   "18"
               ]
           },
           "id": 1
       }
Copy
✔ Copied

Створити правило автореєстрації агента

Додайте хост до групи хостів «Сервери Linux», якщо ім’я вузла мережі містить «SRV» або метадані містять «AlmaLinux».

Запит:

{
           "jsonrpc": "2.0",
           "method": "action.create",
           "params": {
               "name": "Register Linux servers",
               "eventsource": "2",
               "status": "0",
               "filter": {
                   "evaltype": "2",
                   "conditions": [
                       {
                           "conditiontype": "22",
                           "operator": "2",
                           "value": "SRV"
                       },
                       {
                           "conditiontype": "24",
                           "operator": "2",
                           "value": "AlmaLinux"
                       }
                   ]
               },
               "operations": [
                   {
                       "operationtype": "4",
                       "opgroup": [
                           {
                               "groupid": "2"
                           }
                       ]
                   }
               ]
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }
Copy
✔ Copied

Відповідь:

{
           "jsonrpc": "2.0",
           "result": {
               "actionids": [
                   19
               ]
           },
           "id": 1
       }
Copy
✔ Copied

Дивись також

Джерело

CAction::create() у ui/include/classes/api/services/CAction.php.

To toggle search highlight, press Ctrl+Alt+H
Have an improvement suggestion for this page? Select the text that could be improved and press Ctrl+Enter to send it to the editors.