problem.get
Описание
integer/array problem.get(object parameters)
Метод позволяет получать проблемы в соответствии с заданными параметрами.
Этот метод предназначен для получения нерешенных проблем.
При необходимости также можно дополнительно получать недавно решенные проблемы.
Период, определяющий, что считается "недавно", задается в Администрирование > Общие.
Проблемы, которые были решены раньше этого периода, не хранятся в таблице проблем.
Чтобы получить проблемы, решенные более давно, используйте метод event.get.
Этот метод может возвращать проблемы удаленной сущности, если эти проблемы еще не были удалены housekeeper.
Этот метод доступен пользователям любого типа. Разрешения на вызов метода можно отозвать в настройках роли пользователя. Дополнительные сведения см. в разделе Роли пользователей.
Параметры
(object) Параметры, определяющие требуемый результат.
Метод поддерживает следующие параметры.
| Parameter | Type | Description |
|---|---|---|
| eventids | ID/array | Возвращать только проблемы с указанными ID. |
| groupids | ID/array | Возвращать только проблемы, созданные объектами, которые принадлежат указанным группам узлов сети. |
| hostids | ID/array | Возвращать только проблемы, созданные объектами, которые принадлежат указанным узлам сети. |
| objectids | ID/array | Возвращать только проблемы, созданные указанными объектами. |
| source | integer | Возвращать только проблемы с указанным типом. См. список поддерживаемых типов событий на странице объекта события проблемы problem event object page. По умолчанию: 0 - проблема, созданная триггером. |
| object | integer | Возвращать только проблемы, созданные объектами указанного типа. См. список поддерживаемых типов объектов на странице объекта события проблемы problem event object page. По умолчанию: 0 - триггер. |
| acknowledged | boolean | Если установлено в true, возвращать только подтвержденные проблемы. |
| action | integer | Возвращать только проблемы, для которых были выполнены указанные действия обновления события. Для нескольких действий используйте сумму любых допустимых значений битовой маски в качестве маски (например, 34 для подтверждения и подавления события). |
| action_userids | ID/array | Возвращать только проблемы с указанными ID пользователей, выполнивших действия обновления события проблемы. |
| suppressed | boolean | Если установлено в true, возвращать только подавленные проблемы. |
| symptom | boolean | Если установлено в true, возвращать только события проблем-симптомов. |
| severities | integer/array | Возвращать только проблемы с указанными уровнями серьезности события. Применяется только если object - trigger. |
| evaltype | integer | Метод оценки тегов. Возможные значения: 0 - (по умолчанию) И/ИЛИ; 2 - ИЛИ. |
| tags | array | Возвращать только проблемы с указанными тегами. Формат: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...].Пустой массив возвращает все проблемы. Возможные значения оператора: 0 - (по умолчанию) Содержит; 1 - Равно; 2 - Не содержит; 3 - Не равно; 4 - Существует; 5 - Не существует. |
| recent | boolean | Если установлено в true, возвращать недавние проблемы, включая те, которые были решены в пределах ok_period, а также любые нерешенные проблемы.Если установлено в false, возвращать только нерешенные проблемы. |
| eventid_from | string | Возвращать только проблемы с ID больше или равным указанному ID. |
| eventid_till | string | Возвращать только проблемы с ID меньше или равным указанному ID. |
| time_from | timestamp | Возвращать только проблемы, созданные после указанного времени или в указанное время. |
| time_till | timestamp | Возвращать только проблемы, созданные до указанного времени или в указанное время. |
| selectAcknowledges | query | Возвращать свойство acknowledges с обновлениями проблемы. Обновления проблемы сортируются в обратном хронологическом порядке.Объект обновления проблемы имеет следующие свойства: acknowledgeid - (ID) ID обновления;userid - (ID) ID пользователя, который обновил событие;eventid - (ID) ID обновленного события;clock - (timestamp) время, когда событие было обновлено;message - (string) текст сообщения;action - (integer)тип действия обновления (см. event.acknowledge);old_severity - (integer) уровень серьезности события до этого действия обновления;new_severity - (integer) уровень серьезности события после этого действия обновления;suppress_until - (timestamp) время, до которого событие будет подавлено;taskid - (ID) ID задачи, если текущее событие проходит изменение ранга;maintenanceid - (ID) ID обслуживания.Поддерживает count. |
| selectTags | query | Возвращать свойство tags с тегами проблемы. Формат вывода: [{"tag": "<tag>", "value": "<value>"}, ...]. |
| selectSuppressionData | query | Возвращать свойство suppression_data со списком активных обслуживаний и ручных подавлений:maintenanceid - (ID) ID обслуживания;userid - (ID) ID пользователя, который подавил проблему;suppress_until - (integer) время, до которого проблема подавлена. |
| filter | object | Возвращать только те результаты, которые точно соответствуют указанному фильтру. Принимает объект, где ключи - это имена свойств, а значения - либо одно значение, либо массив значений для сопоставления. Не поддерживает свойства с типом данных text data type. |
| sortfield | string/array | Сортировать результат по указанным свойствам. Возможные значения: eventid. |
| countOutput | boolean | Эти параметры описаны в справочном комментарии. |
| editable | boolean | |
| excludeSearch | boolean | |
| limit | integer | |
| output | query | |
| preservekeys | boolean | |
| search | object | |
| searchByAny | boolean | |
| searchWildcardsEnabled | boolean | |
| sortorder | string/array | |
| startSearch | boolean |
Возвращаемые значения
(integer/array) Возвращает либо:
- массив объектов;
- количество полученных объектов, если использовался параметр
countOutput.
Примеры
Получение событий проблем триггера
Получите недавние события от триггера "15112."
{
"jsonrpc": "2.0",
"method": "problem.get",
"params": {
"output": "extend",
"selectAcknowledges": "extend",
"selectTags": "extend",
"selectSuppressionData": "extend",
"objectids": "15112",
"recent": true,
"sortfield": ["eventid"],
"sortorder": "DESC"
},
"id": 1
}
Ответ:
{
"jsonrpc": "2.0",
"result": [
{
"eventid": "1245463",
"source": "0",
"object": "0",
"objectid": "15112",
"clock": "1472457242",
"ns": "209442442",
"r_eventid": "1245468",
"r_clock": "1472457285",
"r_ns": "125644870",
"correlationid": "0",
"userid": "1",
"name": "Zabbix agent on localhost is unreachable for 5 minutes",
"acknowledged": "1",
"severity": "3",
"cause_eventid": "0",
"suppressed": "1",
"acknowledges": [
{
"acknowledgeid": "14443",
"userid": "1",
"eventid": "1245463",
"clock": "1472457281",
"message": "problem solved",
"action": "6",
"old_severity": "0",
"new_severity": "0",
"suppress_until": "1472511600",
"taskid": "0",
"maintenanceid": "0"
}
],
"opdata": "",
"suppression_data": [
{
"maintenanceid": "15",
"suppress_until": "1472511600",
"userid": "0"
}
],
"tags": [
{
"tag": "test-tag",
"value": "test-value"
}
],
"urls": []
}
],
"id": 1
}
Получение проблем, подтвержденных указанным пользователем
Получение проблем, подтвержденных пользователем с ID=10
{
"jsonrpc": "2.0",
"method": "problem.get",
"params": {
"output": "extend",
"action": 2,
"action_userids": [10],
"selectAcknowledges": ["userid", "action"],
"sortfield": ["eventid"],
"sortorder": "DESC"
},
"id": 1
}
Ответ:
{
"jsonrpc": "2.0",
"result": [
{
"eventid": "1248566",
"source": "0",
"object": "0",
"objectid": "15142",
"clock": "1472457242",
"ns": "209442442",
"r_eventid": "1245468",
"r_clock": "1472457285",
"r_ns": "125644870",
"correlationid": "0",
"userid": "10",
"name": "Агент Zabbix на localhost недоступен в течение 5 минут",
"acknowledged": "1",
"severity": "3",
"cause_eventid": "0",
"suppressed": "0",
"acknowledges": [
{
"acknowledgeid": "9",
"userid": "10",
"action": "2"
}
],
"opdata": "",
"urls": []
}
],
"id": 1
}
См. также
Источник
CEvent::get() в ui/include/classes/api/services/CProblem.php.