action.get

Описание

integer/array action.get(объект parameters)

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

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

Параметры

(object) Параметры, определяющие желаемый вывод.

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

Параметр Тип Описание
actionids ID/array Возвращать только действия с указанными ID.
groupids ID/array Возвращать только действия, использующие указанные группы узлов сети в условиях действия.
hostids ID/array Возвращать только действия, использующие указанные узлы сети в условиях действия.
triggerids ID/array Возвращать только действия, использующие указанные триггеры в условиях действия.
mediatypeids ID/array Возвращать только действия, использующие указанные типы медиа для отправки сообщений.
usrgrpids ID/array Возвращать только действия, настроенные на отправку сообщений указанным группам пользователей.
userids ID/array Возвращать только действия, настроенные на отправку сообщений указанным пользователям.
scriptids ID/array Возвращать только действия, настроенные на запуск указанных скриптов.
selectFilter query Возвращать свойство filter с фильтром условий действия.
selectOperations query Возвращать свойство operations с операциями действия.
selectRecoveryOperations query Возвращать свойство recovery_operations с операциями восстановления действия.
selectUpdateOperations query Возвращать свойство update_operations с операциями обновления действия.
sortfield string/array Сортировать результат по указанным свойствам.

Возможные значения: actionid, name, status.
countOutput boolean Эти параметры описаны в справочном комментарии.
excludeSearch boolean
filter object
limit integer
output query
preservekeys boolean
search object
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

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

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

  • массив объектов

или

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

Примеры

Получение действий триггеров

Получение всех настроенных действий триггеров вместе с условиями действий и операциями.

Запрос:

{
    "jsonrpc": "2.0",
    "method": "action.get",
    "params": {
        "output": "extend",
        "selectOperations": "extend",
        "selectRecoveryOperations": "extend",
        "selectUpdateOperations": "extend",
        "selectFilter": "extend",
        "filter": {
            "eventsource": 0
        }
    },
    "id": 1
}

Ответ:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "actionid": "3",
            "name": "Сообщать о проблемах администраторам Zabbix",
            "eventsource": "0",
            "status": "1",
            "esc_period": "1h",
            "pause_suppressed": "1",
            "filter": {
                "evaltype": "0",
                "formula": "",
                "conditions": [],
                "eval_formula": ""
            },
            "operations": [
                {
                    "operationid": "3",
                    "actionid": "3",
                    "operationtype": "0",
                    "esc_period": "0",
                    "esc_step_from": "1",
                    "esc_step_to": "1",
                    "evaltype": "0",
                    "opconditions": [],
                    "opmessage": [
                        {
                            "default_msg": "1",
                            "subject": "",
                            "message": "",
                            "mediatypeid" => "0"
                        }
                    ],
                    "opmessage_grp": [
                        {
                            "usrgrpid": "7"
                        }
                    ]
                }
            ],
            "recovery_operations": [
                {
                    "operationid": "7",
                    "actionid": "3",
                    "operationtype": "11",
                    "evaltype": "0",
                    "opconditions": [],
                    "opmessage": {
                        "default_msg": "0",
                        "subject": "{TRIGGER.STATUS}: {TRIGGER.NAME}",
                        "message": "Триггер: {TRIGGER.NAME}\r\nСостояние триггера: {TRIGGER.STATUS}\r\nВажность триггера: {TRIGGER.SEVERITY}\r\nURL триггера: {TRIGGER.URL}\r\n\r\nЗначения элементов данных:\r\n\r\n1. {ITEM.NAME1} ({HOST.NAME1}:{ITEM.KEY1}): {ITEM.VALUE1}\r\n2. {ITEM.NAME2} ({HOST.NAME2}:{ITEM.KEY2}): {ITEM.VALUE2}\r\n3. {ITEM.NAME3} ({HOST.NAME3}:{ITEM.KEY3}): {ITEM.VALUE3}\r\n\r\nID исходного события: {EVENT.ID}",
                        "mediatypeid": "0"
                    }
                }
            ],
            "update_operations": [
                {
                    "operationid": "31",
                    "operationtype": "12",
                    "evaltype": "0",
                    "opmessage": {
                        "default_msg": "1",
                        "subject": "",
                        "message": "",
                        "mediatypeid": "0"
                    }
                },
                {
                    "operationid": "32",
                    "operationtype": "0",
                    "evaltype": "0",
                    "opmessage": {
                        "default_msg": "0",
                        "subject": "Обновлено: {TRIGGER.NAME}",
                        "message": "{USER.FULLNAME} обновил проблему в {EVENT.UPDATE.DATE} {EVENT.UPDATE.TIME} следующим сообщением:\r\n{EVENT.UPDATE.MESSAGE}\r\n\r\nТекущее состояние проблемы: {EVENT.STATUS}",
                        "mediatypeid": "1"
                    },
                    "opmessage_grp": [
                        {
                            "usrgrpid": "7"
                        }
                    ],
                    "opmessage_usr": []
                },
                {
                    "operationid": "33",
                    "operationtype": "1",
                    "evaltype": "0",
                    "opcommand": {
                        "scriptid": "3"
                    },
                    "opcommand_hst": [
                        {
                            "hostid": "10084"
                        }
                    ],
                    "opcommand_grp": []
                }
            ]
        }
    ],
    "id": 1
}

Получение действий обнаружения

Вернуть все настроенные действия обнаружения вместе с условиями и операциями этих действий. Фильтр использует тип вычисления "и", поэтому свойство formula является пустым, а свойствоeval_formula генерируется автоматически.

Запрос:

{
    "jsonrpc": "2.0",
    "method": "action.get",
    "params": {
    "output": "extend",
    "selectOperations": "extend",
    "selectFilter": "extend",
    "filter": {
    "eventsource": 1
    }
    },
    "id": 1
}

Ответ:

{
    "jsonrpc": "2.0",
    "result": [
    {
    "actionid": "2",
    "name": "Auto discovery. Linux servers.",
    "eventsource": "1",
    "status": "1",
    "esc_period": "0s",
    "pause_suppressed": "1",
    "filter": {
    "evaltype": "0",
    "formula": "",
    "conditions": [
    {
    "conditiontype": "10",
    "operator": "0",
    "value": "0",
    "value2": "",
    "formulaid": "B"
    },
    {
    "conditiontype": "8",
    "operator": "0",
    "value": "9",
    "value2": "",
    "formulaid": "C"
    },
    {
    "conditiontype": "12",
    "operator": "2",
    "value": "Linux",
    "value2": "",
    "formulaid": "A"
    }
    ],
    "eval_formula": "A and B and C"
    },
    "operations": [
    {
    "operationid": "1",
    "actionid": "2",
    "operationtype": "6",
    "esc_period": "0s",
    "esc_step_from": "1",
    "esc_step_to": "1",
    "evaltype": "0",
    "opconditions": [],
    "optemplate": [
    {
    "templateid": "10001"
    }
    ]
    },
    {
    "operationid": "2",
    "actionid": "2",
    "operationtype": "4",
    "esc_period": "0s",
    "esc_step_from": "1",
    "esc_step_to": "1",
    "evaltype": "0",
    "opconditions": [],
    "opgroup": [
    {
    "groupid": "2"
    }
    ]
    }
    ]
    }
    ],
    "id": 1
}

См. также

Источник

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