获取

描述

integer/array problem.get(object parameters)

该方法允许根据给定的参数检索问题。

此方法用于检索未解决的问题。如果指定,还可以额外检索最近解决的问题。AdministrationGeneral 中定义了确定”最近”的时间段。 在该时间段之前解决的问题不会保存在问题表中。要检索过去已解决的问题,请使用 event.get 方法。

如果housekeeper尚未消除这些问题,则此方法可能会返回已删除实体的问题。

此方法对于任何用户可用。可以在用户角色设置中撤销调用该方法的权限。更多信息请查看 用户角色

参数

(object) 定义所需输出的参数。

该方法支持以下参数。

参数类型描述
eventidsstring/array仅返回给定 ID 的问题。
groupidsstring/array仅返回属于给定主机组的对象创建的问题。
hostidsstring/array仅返回属于给定主机的对象创建的问题。
objectidsstring/array仅返回给定对象创建的问题。
sourceinteger仅返回给定类型的问题。

有关支持的事件类型列表,请参阅问题事件对象页面

默认值:0 - 由触发器创建的问题。
objectinteger仅返回由给定类型的对象创建的问题。

有关支持的对象类型列表,请参阅问题事件对象页面

默认值:0 - 触发器。
acknowledgedbooleantrue - 仅返回已确认的问题;
false - 仅未确认。
suppressedbooleantrue - 仅返回被抑制的问题;
false - 返回正常状态的问题。
severitiesinteger/array仅返回给定事件严重性的问题。仅当对象是触发器时才适用。
evaltypeinteger标签搜索规则。

可用值:
0 - (默认) And/Or;
2 - Or。
tags对象数组仅返回给定标签的问题。按标签精确匹配,按值和运算符不区分大小写搜索。
格式:[{“tag”: “<tag>”, “value”: “<value>”, “operator”: “<operator> “}, …]
空数组返回所有问题。

可能的运算符类型:
0 - (默认)相似;
1 - 等于;
2 - 不相似;
3 - 不等于;
4 - 存在;
5 - 不存在。
recentbooleantrue - 返回 PROBLEM 和最近解决的问题(取决于 N 秒的 Display OK 触发器)。
默认值:false - 仅未解决的问题。
eventid_fromstring仅返回 ID 大于或等于给定 ID 的问题。
eventid_tillstring仅返回 ID 小于或等于给定 ID 的问题。
time_fromtimestamp仅返回在给定时间之后或在给定时间创建的问题。
time_tilltimestamp仅返回在给定时间之前或在给定时间创建的问题。
selectAcknowledgesquery返回带有问题更新的 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
selectTagsquery返回带有问题标签的 tags 属性。输出格式:[{“tag”: “<tag>”, “value”: “<value>”}, …]
selectSuppressionDataquery返回带有维护列表的 suppression_data 属性:
maintenanceid - (string) 维护的 ID;
suppress_until - (integer) 出现问题的时间被压制。
sortfieldstring/array按给定的属性对结果进行排序。

可用值:eventid
countOutputboolean这些参数对所有的 get 方法是通用的,详情请参阅 参考说明
editableboolean
excludeSearchboolean
filterobject
limitinteger
outputquery
preservekeysboolean
searchobject
searchByAnyboolean
searchWildcardsEnabledboolean
sortorderstring/array
startSearchboolean

返回值

(integer/array) 返回其中之一:

  • 对象数组;
  • 如果使用了 countOutput 参数,则为检索到的对象的数量。

示例

检索触发问题事件

从触发器”15112”中检索最近的事件。

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "problem.get",
  4. "params": {
  5. "output": "extend",
  6. "selectAcknowledges": "extend",
  7. "selectTags": "extend",
  8. "selectSuppressionData": "extend",
  9. "objectids": "15112",
  10. "recent": "true",
  11. "sortfield": ["eventid"],
  12. "sortorder": "DESC"
  13. },
  14. "auth": "67f45d3eb1173338e1b1647c4bdc1916",
  15. "id": 1
  16. }

响应:

  1. {
  2. "jsonrpc": "2.0",
  3. "result": [
  4. {
  5. "eventid": "1245463",
  6. "source": "0",
  7. "object": "0",
  8. "objectid": "15112",
  9. "clock": "1472457242",
  10. "ns": "209442442",
  11. "r_eventid": "1245468",
  12. "r_clock": "1472457285",
  13. "r_ns": "125644870",
  14. "correlationid": "0",
  15. "userid": "1",
  16. "name": "Zabbix agent on localhost is unreachable for 5 minutes",
  17. "acknowledged": "1",
  18. "severity": "3",
  19. "opdata": "",
  20. "acknowledges": [
  21. {
  22. "acknowledgeid": "14443",
  23. "userid": "1",
  24. "eventid": "1245463",
  25. "clock": "1472457281",
  26. "message": "problem solved",
  27. "action": "6",
  28. "old_severity": "0",
  29. "new_severity": "0"
  30. }
  31. ],
  32. "suppression_data": [
  33. {
  34. "maintenanceid": "15",
  35. "suppress_until": "1472511600"
  36. }
  37. ],
  38. "suppressed": "1",
  39. "tags": [
  40. {
  41. "tag": "test tag",
  42. "value": "test value"
  43. }
  44. ]
  45. }
  46. ],
  47. "id": 1
  48. }

参见

来源

ui/include/classes/api/services/CProblem.php 中的 CEvent::get()。