获取
描述
integer/array problem.get(object parameters)
该方法允许根据给定的参数检索问题。
此方法用于检索未解决的问题。如果指定,还可以额外检索最近解决的问题。Administration → General 中定义了确定”最近”的时间段。 在该时间段之前解决的问题不会保存在问题表中。要检索过去已解决的问题,请使用 event.get 方法。
如果housekeeper尚未消除这些问题,则此方法可能会返回已删除实体的问题。
此方法对于任何用户可用。可以在用户角色设置中撤销调用该方法的权限。更多信息请查看 用户角色。
参数
(object)
定义所需输出的参数。
该方法支持以下参数。
参数 | 类型 | 描述 |
---|---|---|
eventids | string/array | 仅返回给定 ID 的问题。 |
groupids | string/array | 仅返回属于给定主机组的对象创建的问题。 |
hostids | string/array | 仅返回属于给定主机的对象创建的问题。 |
objectids | string/array | 仅返回给定对象创建的问题。 |
source | integer | 仅返回给定类型的问题。 有关支持的事件类型列表,请参阅问题事件对象页面。 默认值:0 - 由触发器创建的问题。 |
object | integer | 仅返回由给定类型的对象创建的问题。 有关支持的对象类型列表,请参阅问题事件对象页面。 默认值:0 - 触发器。 |
acknowledged | boolean | true - 仅返回已确认的问题;false - 仅未确认。 |
suppressed | boolean | true - 仅返回被抑制的问题;false - 返回正常状态的问题。 |
severities | integer/array | 仅返回给定事件严重性的问题。仅当对象是触发器时才适用。 |
evaltype | integer | 标签搜索规则。 可用值: 0 - (默认) And/Or; 2 - Or。 |
tags | 对象数组 | 仅返回给定标签的问题。按标签精确匹配,按值和运算符不区分大小写搜索。 格式: [{“tag”: “<tag>”, “value”: “<value>”, “operator”: “<operator> “}, …] 。空数组返回所有问题。 可能的运算符类型: 0 - (默认)相似; 1 - 等于; 2 - 不相似; 3 - 不等于; 4 - 存在; 5 - 不存在。 |
recent | boolean | true - 返回 PROBLEM 和最近解决的问题(取决于 N 秒的 Display OK 触发器)。默认值: false - 仅未解决的问题。 |
eventid_from | string | 仅返回 ID 大于或等于给定 ID 的问题。 |
eventid_till | string | 仅返回 ID 小于或等于给定 ID 的问题。 |
time_from | timestamp | 仅返回在给定时间之后或在给定时间创建的问题。 |
time_till | timestamp | 仅返回在给定时间之前或在给定时间创建的问题。 |
selectAcknowledges | query | 返回带有问题更新的 acknowledges 属性。问题更新按时间倒序排列。问题更新对象具有以下属性: acknowledgeid - (string) 更新的 ID;userid - (string) 更新事件的用户 ID;eventid - (string) 更新事件的 ID;clock - (timestamp) 事件更新的时间;message - (string) 消息文本;action - (integer) 更新操作类型(参见 event.acknowledge);old_severity - 此更新操作之前的(integer) 事件严重性;new_severity - 此更新操作后的(integer) 事件严重性;支持 count 。 |
selectTags | query | 返回带有问题标签的 tags 属性。输出格式:[{“tag”: “<tag>”, “value”: “<value>”}, …] 。 |
selectSuppressionData | query | 返回带有维护列表的 suppression_data 属性:maintenanceid - (string) 维护的 ID;suppress_until - (integer) 出现问题的时间被压制。 |
sortfield | string/array | 按给定的属性对结果进行排序。 可用值: eventid 。 |
countOutput | boolean | 这些参数对所有的 get 方法是通用的,详情请参阅 参考说明 。 |
editable | boolean | |
excludeSearch | boolean | |
filter | object | |
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"
},
"auth": "67f45d3eb1173338e1b1647c4bdc1916",
"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",
"opdata": "",
"acknowledges": [
{
"acknowledgeid": "14443",
"userid": "1",
"eventid": "1245463",
"clock": "1472457281",
"message": "problem solved",
"action": "6",
"old_severity": "0",
"new_severity": "0"
}
],
"suppression_data": [
{
"maintenanceid": "15",
"suppress_until": "1472511600"
}
],
"suppressed": "1",
"tags": [
{
"tag": "test tag",
"value": "test value"
}
]
}
],
"id": 1
}
参见
来源
ui/include/classes/api/services/CProblem.php 中的 CEvent::get()。