trigger.get

Описание

integer/array trigger.get(object parameters)

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

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

Параметры

(object) Параметры, определяющие требуемый результат.

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

Параметр Тип Описание
triggerids ID/array Возвращать только триггеры с указанными идентификаторами.
groupids ID/array Возвращать только триггеры, принадлежащие узлам сети или шаблонам из указанных групп узлов сети или групп шаблонов.
templateids ID/array Возвращать только триггеры, принадлежащие указанным шаблонам.
hostids ID/array Возвращать только триггеры, принадлежащие указанным узлам сети.
itemids ID/array Возвращать только триггеры, содержащие указанные элементы данных.
maintenanceids ID/array Возвращать только триггеры, на которые влияют указанные периоды обслуживания.
functions string/array Возвращать только триггеры, использующие указанные функции.

Список поддерживаемых функций приведён на странице поддерживаемых функций.
group string Возвращать только триггеры, принадлежащие узлам сети или шаблонам из группы узлов сети или группы шаблонов с указанным именем.
host string Возвращать только триггеры, принадлежащие узлу сети с указанным техническим именем.
inherited boolean Если установлено значение true, возвращать только триггеры, унаследованные от шаблона.
templated boolean Если установлено значение true, возвращать только триггеры, принадлежащие шаблонам.
dependent boolean Если установлено значение true, возвращать только триггеры, имеющие зависимости. Если установлено значение false, возвращать только триггеры, не имеющие зависимостей.
monitored flag Возвращать только включённые триггеры, принадлежащие отслеживаемым узлам сети и содержащие только включённые элементы данных.
active flag Возвращать только включённые триггеры, принадлежащие отслеживаемым узлам сети.
maintenance boolean Если установлено значение true, возвращать только включённые триггеры, принадлежащие узлам сети, находящимся на обслуживании.
withUnacknowledgedEvents flag Возвращать только триггеры, имеющие неподтверждённые события.
withAcknowledgedEvents flag Возвращать только триггеры, у которых все события подтверждены.
withLastEventUnacknowledged flag Возвращать только триггеры с неподтверждённым последним событием.
skipDependent flag Пропускать триггеры в состоянии проблемы, зависящие от других триггеров. Обратите внимание, что другие триггеры игнорируются, если они отключены, имеют отключённые элементы данных или принадлежат узлам сети с отключёнными элементами данных.
lastChangeSince timestamp Возвращать только триггеры, изменившие своё состояние после указанного времени.
lastChangeTill timestamp Возвращать только триггеры, изменившие своё состояние до указанного времени.
only_true flag Возвращать только триггеры, которые недавно находились в состоянии проблемы (в течение ok_period).
min_severity integer Возвращать только триггеры с важностью, большей или равной указанной.
evaltype integer Метод вычисления тегов.

Возможные значения:
0 - (по умолчанию) И/ИЛИ;
2 - ИЛИ.
tags array Возвращать только триггеры с указанными тегами.
Формат: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...].
Пустой массив возвращает все триггеры.

Возможные значения оператора:
0 - (по умолчанию) Содержит;
1 - Равно;
2 - Не содержит;
3 - Не равно;
4 - Существует;
5 - Не существует.
expandComment flag Раскрывать макросы в описании триггера.
expandDescription flag Раскрывать макросы в имени триггера.
expandExpression flag Раскрывать функции и макросы в выражении триггера.
selectHostGroups query Возвращать группы узлов сети, которым принадлежит триггер, в свойстве hostgroups.
selectHosts query Возвращать узлы сети, которым принадлежит триггер, в свойстве hosts.
selectItems query Возвращать элементы данных, содержащиеся в триггере, в свойстве items.
selectFunctions query Возвращать функции, используемые в триггере, в свойстве functions.

Объекты функций представляют функции, используемые в выражении триггера, и имеют следующие свойства:
functionid - (ID) идентификатор функции;
itemid - (ID) идентификатор элемента данных, используемого в функции;
function - (string) имя функции;
parameter - (string) параметр, переданный функции. Параметр запроса заменяется символом $ в возвращаемой строке.
selectDependencies query Возвращать триггеры, от которых зависит данный триггер, в свойстве dependencies.
selectDiscoveryData query Возвращать свойство discoveryData с данными объекта обнаружения триггера. Объект обнаружения триггера связывает обнаруженный триггер с прототипом триггера, на основе которого он был обнаружен.

Он имеет следующие свойства:
parent_triggerid - (ID) идентификатор прототипа триггера, на основе которого был создан триггер;
status - (int) статус обнаружения триггера:
0 - (по умолчанию) триггер обнаружен,
1 - триггер больше не обнаруживается;
ts_delete - (timestamp) время удаления триггера, который больше не обнаруживается;
ts_disable - (timestamp) время отключения триггера, который больше не обнаруживается;
disable_source - (int) признак того, был ли триггер отключён правилом LLD или вручную:
0 - (по умолчанию) отключён автоматически,
1 - отключён правилом LLD.
selectDiscoveryRule query Возвращать правило обнаружения низкого уровня, создавшее триггер, в свойстве discoveryRule.
selectLastEvent query Возвращать последнее значимое событие триггера в свойстве lastEvent.
selectTags query Возвращать теги триггера в свойстве tags.
inheritedTags boolean Возвращать триггеры, имеющие указанные tags также в шаблоне, узле сети или связанных шаблонах.

Возможные значения:
true - шаблон, узел сети или связанные шаблоны также должны иметь указанные теги;
false - (по умолчанию) теги из шаблона, узла сети или связанных шаблонов игнорируются.
selectInheritedTags query Возвращать свойство inheritedTags с тегами, унаследованными от шаблонов, связанных шаблонов и узлов сети, а также от элементов данных, на которые ссылаются выражения проблемы или восстановления триггера.
selectTemplateGroups query Возвращать группы шаблонов, которым принадлежит триггер, в свойстве templategroups.
filter object Возвращать только результаты, точно соответствующие указанному фильтру.

Принимает объект, в котором ключами являются имена свойств, а значениями - отдельное значение или массив значений для сопоставления.

Не поддерживает свойства с типом данных text.

Поддерживает дополнительные свойства:
host - техническое имя узла сети, которому принадлежит триггер;
hostid - идентификатор узла сети, которому принадлежит триггер.
limitSelects integer Ограничивает количество записей, возвращаемых вложенными выборками.

Применяется к следующим вложенным выборкам:
selectHosts - результаты сортируются по host.
sortfield string/array Сортировать результат по указанным свойствам.

Возможные значения: triggerid, description, status, priority, lastchange, hostname.
countOutput boolean Эти параметры описаны в справочных комментариях.
editable boolean
excludeSearch boolean
limit integer
output query
preservekeys boolean
search object
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean
selectTriggerDiscovery query Возвращать объект обнаружения триггера в свойстве triggerDiscovery. Объекты обнаружения триггеров связывают триггер с прототипом триггера, на основе которого он был создан.

Этот запрос устарел; вместо него используйте selectDiscoveryData.

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

(integer/array) Возвращает либо:

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

Примеры

Получение данных по ID триггера

Получите все данные и функции, используемые в триггере "14062".

Запрос:

{
    "jsonrpc": "2.0",
    "method": "trigger.get",
    "params": {
        "triggerids": "14062",
        "output": "extend",
        "selectFunctions": "extend"
    },
    "id": 1
}

Ответ:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "triggerid": "14062",
            "expression": "{13513}<10m",
            "description": "{HOST.NAME} был перезапущен (время работы < 10m)",
            "url": "",
            "status": "0",
            "value": "0",
            "priority": "2",
            "lastchange": "0",
            "comments": "Время работы узла сети меньше 10 минут",
            "error": "",
            "templateid": "10016",
            "type": "0",
            "state": "0",
            "flags": "0",
            "recovery_mode": "0",
            "recovery_expression": "",
            "correlation_mode": "0",
            "correlation_tag": "",
            "manual_close": "0",
            "opdata": "",
            "event_name": "",
            "uuid": "",
            "url_name": "",
            "functions": [
                {
                    "functionid": "13513",
                    "itemid": "24350",
                    "triggerid": "14062",
                    "parameter": "$",
                    "function": "last"
                }
            ]
        }
    ],
    "id": 1
}

Получение триггеров в состоянии проблемы

Получите ID, имя и уровень серьезности всех триггеров в состоянии проблемы и отсортируйте их по уровню серьезности по убыванию.

Запрос:

{
    "jsonrpc": "2.0",
    "method": "trigger.get",
    "params": {
        "output": [
            "triggerid",
            "description",
            "priority"
        ],
        "filter": {
            "value": 1
        },
        "sortfield": "priority",
        "sortorder": "DESC"
    },
    "id": 1
}

Ответ:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "triggerid": "13907",
            "description": "Zabbix self-monitoring processes < 100% busy",
            "priority": "4"
        },
        {
            "triggerid": "13824",
            "description": "Zabbix discoverer processes more than 75% busy",
            "priority": "3"
        }
    ],
    "id": 1
}

Получение конкретного триггера с тегами

Получение конкретного триггера с тегами.

Запрос:

{
    "jsonrpc": "2.0",
    "method": "trigger.get",
    "params": {
        "output": [
            "triggerid",
            "description"
        ],
        "selectTags": "extend",
        "triggerids": [
            "17578"
        ]
    },
    "id": 1
}

Ответ:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "triggerid": "17370",
            "description": "Service status",
            "tags": [
                {
                    "tag": "service",
                    "value": "{{ITEM.VALUE}.regsub(\"Service (.*) has stopped\", \"\\1\")}",
                    "automatic": "1"
                },
                {
                    "tag": "error",
                    "value": "",
                    "automatic": "1"
                }
            ]
        }
    ],
    "id": 1
}

См. также

Источник

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