event.get

Описание

integer/array event.get(object parameters)

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

Этот метод может возвращать события удаленной сущности, если эти события еще не были удалены housekeeper.

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

Параметры

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

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

Parameter Type Description
eventids ID/array Возвращать только события с указанными ID.
groupids ID/array Возвращать только события, созданные объектами, которые принадлежат указанным группам узлов сети.
hostids ID/array Возвращать только события, созданные объектами, которые принадлежат указанным узлам сети.
objectids ID/array Возвращать только события, созданные указанными объектами.
source integer Возвращать только события с указанным типом.

Список поддерживаемых типов событий см. на странице объекта события.

По умолчанию: 0 - события триггера.
object integer Возвращать только события, созданные объектами указанного типа.

Список поддерживаемых типов объектов см. на странице объекта события.

По умолчанию: 0 - триггер.
acknowledged boolean Если установлено в true, возвращать только подтвержденные события.
action integer Возвращать только события, для которых были выполнены указанные действия обновления события. Для нескольких действий используйте сумму любых допустимых значений bitmap в качестве битовой маски (например, 34 для подтверждения и подавления события).
action_userids ID/array Возвращать только события с указанными ID пользователей, выполнивших действия обновления события.
suppressed boolean Если установлено в true, возвращать только подавленные события.
symptom boolean Если установлено в true, возвращать только события-симптомы.
severities integer/array Возвращать только события с указанными уровнями серьезности события. Применяется только если object - trigger.
trigger_severities integer/array Возвращать только события с указанными уровнями серьезности триггера. Применяется только если object - trigger.
evaltype integer Метод оценки тегов.

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

Возможные значения operator:
0 - (по умолчанию) Содержит;
1 - Равно;
2 - Не содержит;
3 - Не равно;
4 - Существует;
5 - Не существует.
eventid_from string Возвращать только события с ID, большим или равным указанному ID.
eventid_till string Возвращать только события с ID, меньшим или равным указанному ID.
time_from timestamp Возвращать только события, созданные в указанное время или позже.
time_till timestamp Возвращать только события, созданные в указанное время или раньше.
problem_time_from timestamp Возвращает только события, которые находились в состоянии проблемы начиная с problem_time_from, независимо от их текущего состояния. Применяется только когда source - событие триггера, а object - триггер. Этот параметр обязателен, если указан problem_time_till.
problem_time_till timestamp Возвращает только события, которые находились в состоянии проблемы до problem_time_till, независимо от их текущего состояния. Применяется только когда source - событие триггера, а object - триггер. Этот параметр обязателен, если указан problem_time_from.
value integer/array Возвращать только события с указанными значениями.
selectAcknowledges query Возвращать свойство acknowledges с обновлениями события. Обновления события сортируются в обратном хронологическом порядке.

Объект обновления события имеет следующие свойства:
acknowledgeid - (ID) ID подтверждения;
userid - (ID) ID пользователя, который обновил событие;
clock - (timestamp) время обновления события;
message - (string) текст сообщения;
action - (integer) выполненное действие обновления, см. event.acknowledge;
old_severity - (integer) уровень серьезности события до этого действия обновления;
new_severity - (integer) уровень серьезности события после этого действия обновления;
suppress_until - (timestamp) время, до которого событие будет подавлено;
taskid - (ID) ID задачи, если текущее событие находится в процессе изменения ранга;
username - (string) имя пользователя, который обновил событие;
name - (string) имя пользователя, который обновил событие;
surname - (string) фамилия пользователя, который обновил событие.

Поддерживает count.
selectAlerts query Возвращать свойство alerts с оповещениями, сгенерированными событием. Оповещения сортируются в обратном хронологическом порядке.
selectHosts query Возвращать свойство hosts с узлами сети, содержащими объект, который создал событие. Поддерживается только для событий, сгенерированных триггерами, элементами данных или правилами LLD.
selectRelatedObject query Возвращать свойство relatedObject с объектом, который создал событие. Тип возвращаемого объекта зависит от типа события.
selectSuppressionData query Возвращать свойство suppression_data со списком активных обслуживаний и ручных подавлений:
maintenanceid - (ID) ID обслуживания;
userid - (ID) ID пользователя, который подавил событие;
suppress_until - (integer) время, до которого событие подавлено.
selectTags query Возвращать свойство tags с тегами события.
filter object Возвращать только те результаты, которые точно соответствуют указанному фильтру.

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

Не поддерживает свойства с типом данных text data type.
sortfield string/array Сортировать результат по указанным свойствам.

Возможные значения: eventid, objectid, clock.

Возможные значения при использовании вместе с groupBy: objectid.

Возможные значения при использовании вместе с countOutput и groupBy: objectid, rowscount.
groupBy string/array Группировать результаты по указанным свойствам. Указанные свойства будут возвращены в результатах.

Возможные значения: objectid.
countOutput boolean Эти параметры описаны в справочном комментарии.
editable boolean
excludeSearch boolean
limit integer
output query
preservekeys boolean
search object
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean
select_acknowledges
(deprecated)
query Этот параметр устарел, используйте вместо него selectAcknowledges.
Возвращать свойство acknowledges с обновлениями события.
Обновления события сортируются в обратном хронологическом порядке.

Объект обновления события имеет следующие свойства:
acknowledgeid - (ID) ID подтверждения;
userid - (ID) ID пользователя, который обновил событие;
clock - (timestamp) время обновления события;
message - (string) текст сообщения;
action - (integer) выполненное действие обновления, см. event.acknowledge;
old_severity - (integer) уровень серьезности события до этого действия обновления;
new_severity - (integer) уровень серьезности события после этого действия обновления;
suppress_until - (timestamp) время, до которого событие будет подавлено;
taskid - (ID) ID задачи, если текущее событие находится в процессе изменения ранга;
username - (string) имя пользователя, который обновил событие;
name - (string) имя пользователя, который обновил событие;
surname - (string) фамилия пользователя, который обновил событие.

Поддерживает count.
select_alerts
(deprecated)
query Этот параметр устарел, используйте вместо него selectAlerts.
Возвращать свойство alerts с оповещениями, сгенерированными событием.
Оповещения сортируются в обратном хронологическом порядке.

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

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

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

Примеры

Получение событий триггера

Получите последние события из триггера "22395".

Запрос:

{
    "jsonrpc": "2.0",
    "method": "event.get",
    "params": {
        "output": "extend",
        "selectAcknowledges": "extend",
        "selectSuppressionData": "extend",
        "selectTags": "extend",
        "objectids": "22395",
        "sortfield": ["clock", "eventid"],
        "sortorder": "DESC"
    },
    "id": 1
}

Ответ:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "eventid": "20",
            "source": "0",
            "object": "0",
            "objectid": "22395",
            "clock": "1728658089",
            "value": "0",
            "acknowledged": "0",
            "ns": "461809482",
            "name": "Load average is too high (per CPU load over 1.5 for 5m)",
            "severity": "0",
            "r_eventid": "0",
            "c_eventid": "0",
            "correlationid": "0",
            "userid": "0",
            "cause_eventid": "0",
            "acknowledges": [],
            "opdata": "Load averages(1m 5m 15m): (1.6328 3.0522 2.2515), # of CPUs: 2",
            "suppression_data": [],
            "suppressed": "0",
            "tags": [
                {
                    "tag": "scope",
                    "value": "capacity"
                },
                {
                    "tag": "scope",
                    "value": "performance"
                },
                {
                    "tag": "component",
                    "value": "cpu"
                },
                {
                    "tag": "class",
                    "value": "os"
                },
                {
                    "tag": "target",
                    "value": "linux"
                }
            ],
            "urls": []
        },
        {
            "eventid": "4",
            "source": "0",
            "object": "0",
            "objectid": "22395",
            "clock": "1728657737",
            "value": "1",
            "acknowledged": "1",
            "ns": "460759366",
            "name": "Load average is too high (per CPU load over 1.5 for 5m)",
            "severity": "3",
            "r_eventid": "20",
            "c_eventid": "0",
            "correlationid": "0",
            "userid": "0",
            "cause_eventid": "0",
            "acknowledges": [
                {
                    "acknowledgeid": "1",
                    "userid": "1",
                    "clock": "1728657938",
                    "message": "Testing environment. Please disregard this alert.",
                    "action": "38",
                    "old_severity": "0",
                    "new_severity": "0",
                    "suppress_until": "1728744338",
                    "taskid": "0",
                    "username": "Admin",
                    "name": "Zabbix",
                    "surname": "Administrator"
                }
            ],
            "opdata": "Load averages(1m 5m 15m): (1.6328 3.0522 2.2515), # of CPUs: 2",
            "suppression_data": [
                {
                    "maintenanceid": "0",
                    "suppress_until": "1728744338",
                    "userid": "1"
                }
            ],
            "suppressed": "1",
            "tags": [
                {
                    "tag": "scope",
                    "value": "capacity"
                },
                {
                    "tag": "scope",
                    "value": "performance"
                },
                {
                    "tag": "component",
                    "value": "cpu"
                },
                {
                    "tag": "class",
                    "value": "os"
                },
                {
                    "tag": "target",
                    "value": "linux"
                }
            ],
            "urls": []
        }
    ],
    "id": 1
}

Получение событий за период времени

Получите все события, созданные между 17 и 18 октября 2012 года, в обратном хронологическом порядке.

Запрос:

{
    "jsonrpc": "2.0",
    "method": "event.get",
    "params": {
        "output": "extend",
        "time_from": "1350432000",
        "time_till": "1350518400",
        "sortfield": ["clock", "eventid"],
        "sortorder": "DESC"
    },
    "id": 1
}

Ответ:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "eventid": "20617",
            "source": "0",
            "object": "0",
            "objectid": "14282",
            "clock": "1350477816",
            "value": "1",
            "acknowledged": "0",
            "ns": "0",
            "name": "Less than 25% free in the history cache",
            "severity": "3",
            "r_eventid": "0",
            "c_eventid": "0",
            "correlationid": "0",
            "userid": "0",
            "cause_eventid": "0",
            "opdata": "",
            "suppressed": "0",
            "urls": []
        },
        {
            "eventid": "20616",
            "source": "0",
            "object": "0",
            "objectid": "14281",
            "clock": "1350477814",
            "value": "0",
            "acknowledged": "0",
            "ns": "0",
            "name": "Zabbix trapper processes more than 75% busy",
            "severity": "0",
            "r_eventid": "0",
            "c_eventid": "0",
            "correlationid": "0",
            "userid": "0",
            "cause_eventid": "0",
            "opdata": "",
            "suppressed": "0",
            "urls": []
        },
        {
            "eventid": "20615",
            "source": "0",
            "object": "0",
            "objectid": "14281",
            "clock": "1350477541",
            "value": "1",
            "acknowledged": "0",
            "ns": "0",
            "name": "Zabbix trapper processes more than 75% busy",
            "severity": "3",
            "r_eventid": "20616",
            "c_eventid": "0",
            "correlationid": "0",
            "userid": "0",
            "cause_eventid": "0",
            "opdata": "",
            "suppressed": "0",
            "urls": []
        }
    ],
    "id": 1
}

Получение событий, подтвержденных указанным пользователем

Получение событий, подтвержденных пользователем с ID=10

Запрос:

{
    "jsonrpc": "2.0",
    "method": "event.get",
    "params": {
        "output": "extend",
        "action": 2,
        "action_userids": [10],
        "selectAcknowledges": ["userid", "action"],
        "sortfield": ["eventid"],
        "sortorder": "DESC"
    },
    "id": 1
}

Ответ:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "eventid": "503",
            "source": "0",
            "object": "0",
            "objectid": "23162",
            "clock": "1747212236",
            "value": "1",
            "acknowledged": "1",
            "ns": "413470863",
            "name": "Number of installed packages has been changed",
            "severity": "2",
            "r_eventid": "0",
            "c_eventid": "0",
            "correlationid": "0",
            "userid": "0",
            "cause_eventid": "0",
            "acknowledges": [
                {
                    "userid": "10",
                    "action": "2"
                }
            ],
            "opdata": "",
            "suppressed": "0",
            "urls": []
        }
    ],
    "id": 1
}

Получение 5 триггеров с наибольшим числом событий проблемы

Получите 5 триггеров с уровнями серьезности "Warning", "Average", "High" или "Disaster" вместе с количеством событий проблемы за указанный период времени.

Request:

{
    "jsonrpc": "2.0",
    "method": "event.get",
    "params": {
        "countOutput": true,
        "groupBy": "objectid",
        "source": 0,
        "object": 0,
        "value": 1,
        "time_from": 1672531200,
        "time_till": 1677628800,
        "trigger_severities": [2, 3, 4, 5],
        "sortfield": ["rowscount"],
        "sortorder": "DESC",
        "limit": 5
    },
    "id": 1
}

Response:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "objectid": "232124",
            "rowscount": "27"
        },
        {
            "objectid": "29055",
            "rowscount": "23"
        },
        {
            "objectid": "253731",
            "rowscount": "18"
        },
        {
            "objectid": "254062",
            "rowscount": "11"
        },
        {
            "objectid": "23216",
            "rowscount": "7"
        }
    ],
    "id": 1
}

См. также

Источник

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