action.create

Описание

object action.create(объект/массив actions)

Этот метод позволяет создавать новые действия.

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

Параметры

(объект/массив) Действия для создания.

Кроме стандартных свойств действия, метод принимает следующие параметры.

Параметр Тип Описание
filter object(объект) Объект фильтра для действия.
operations array(массив) Операции для создания действия.
recovery_operations array(массив) Операции восстановления для создания действия.
update_operations array(массив) Операции обновления для создания действия.

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

(объект) Возвращает объект, который содержит ID созданных действий под свойством actionids. Порядок возвращаемых ID соответствует порядку переданных действий.

Примеры

Создание действия триггера

Создание действия триггера, которое начнется, когда триггер (с содержащим слово "memory" в его имени) от хоста "10084" перейдет в состояние ПРОБЛЕМЫ. Действие будет иметь 4 настроенные операции. Первая и немедленная операция отправит сообщение всем пользователям в группе пользователей "7" через тип носителя "1". Если событие не будет разрешено в течение 30 минут, вторая операция запустит скрипт "5" (скрипт с областью действия "Action operation") на всех хостах в группе "2". Если событие будет разрешено, операция восстановления уведомит всех пользователей, которые получили любые сообщения о проблеме. Если событие будет обновлено, операция подтверждения/обновления уведомит (с пользовательской темой и сообщением) всех пользователей, которые получили любые сообщения о проблеме.

Запрос:

{
           "jsonrpc": "2.0",
           "method": "action.create",
           "params": {
               "name": "Trigger action",
               "eventsource": 0,
               "esc_period": "30m",
               "filter": {
                   "evaltype": 0,
                   "conditions": [
                       {
                           "conditiontype": 1,
                           "operator": 0,
                           "value": "10084"
                       },
                       {
                           "conditiontype": 3,
                           "operator": 2,
                           "value": "memory"
                       }
                   ]
               },
               "operations": [
                   {
                       "operationtype": 0,
                       "esc_step_from": 1,
                       "esc_step_to": 1,
                       "opmessage_grp": [
                           {
                               "usrgrpid": "7"
                           }
                       ],
                       "opmessage": {
                           "default_msg": 1,
                           "mediatypeid": "1"
                       }
                   },
                   {
                       "operationtype": 1,
                       "esc_step_from": 2,
                       "esc_step_to": 2,
                       "opconditions": [
                           {
                               "conditiontype": 14,
                               "operator": 0,
                               "value": "0"
                           }
                       ],
                       "opcommand_grp": [
                           {
                               "groupid": "2"
                           }
                       ],
                       "opcommand": {
                           "scriptid": "5"
                       }
                   }
               ],
               "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"
                       }
                   }
               ]
           },
           "id": 1
       }
Copy
✔ Copied

Ответ:

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

Создание действия обнаружения

Создать действие обнаружения, которое свяжет обнаруженные узлы сети с шаблоном "10001"

Запрос:

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

Ответ:

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

Использование пользовательского фильтра выражений

Создание действия триггера, которое использует пользовательское выражение - "A and (B or C)" - для оценки условий действия. Как только триггер с серьезностью выше или равной "Warning" от хоста "10084" или хоста "10106" перейдет в состояние ПРОБЛЕМЫ, действие отправит сообщение всем пользователям в группе пользователей "7" через тип носителя "1". Формулы с идентификаторами "A", "B" и "C" выбраны произвольно.

Запрос:

{
           "jsonrpc": "2.0",
           "method": "action.create",
           "params": {
               "name": "Trigger action",
               "eventsource": 0,
               "esc_period": "15m",
               "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_step_from": 1,
                       "esc_step_to": 1,
                       "opmessage_grp": [
                           {
                               "usrgrpid": "7"
                           }
                       ],
                       "opmessage": {
                           "default_msg": 1,
                           "mediatypeid": "1"
                       }
                   }
               ]
           },
           "id": 1
       }
Copy
✔ Copied

Ответ:

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

Создание правила автоматической регистрации агента

Создать действие автоматической регистрации, которое добавляет хост в группу хостов "2", если имя хоста содержит "SRV" или метаданные содержат "AlmaLinux".

Запрос:

{
           "jsonrpc": "2.0",
           "method": "action.create",
           "params": {
               "name": "Register Linux servers",
               "eventsource": "2",
               "filter": {
                   "evaltype": "2",
                   "conditions": [
                       {
                           "conditiontype": "22",
                           "operator": "2",
                           "value": "SRV"
                       },
                       {
                           "conditiontype": "24",
                           "operator": "2",
                           "value": "AlmaLinux"
                       }
                   ]
               },
               "operations": [
                   {
                       "operationtype": "4",
                       "opgroup": [
                           {
                               "groupid": "2"
                           }
                       ]
                   }
               ]
           },
           "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.