获取
描述
integer/array event.get(object parameters)
该方法允许根据给定的参数检索事件。
如果管家尚未删除已删除实体的事件,则此方法可能会返回这些事件。
此方法适用于任何类型的用户。可以在用户角色设置中撤销调用该方法的权限。参见用户角色 了解更多信息。
参数
(object)
定义所需要输出的参数。
此方法支持以下参数。
参数 | 类型 | 描述 |
---|---|---|
eventids | ID/array | 仅返回具有给定 ID 的事件。 |
groupids | ID/array | 仅返回由属于给定主机组的对象创建的事件。 |
hostids | ID/array | 仅返回由属于给定主机的对象创建的事件。 |
objectids | ID/array | 仅返回由给定对象创建的事件。 |
source | integer | 仅返回给定类型的事件。 参阅 事件对象页面 获取支持的事件类型列表。 默认值:0 - 触发器事件。 |
object | integer | 仅返回由给定类型的对象创建的事件。 参阅 事件对象页面 获取支持的事件类型列表。 默认值:0 - 触发器。 |
acknowledged | boolean | 如果设置为 true ,仅返回已确认的事件。 |
action | integer | 仅返回已执行给定事件更新动作 的事件。 对于多个操作,请使用任何可接受的位图值的组合作为位掩码。 |
action_userids | ID/array | 仅返回具有执行事件更新操作的用户的给定ID的事件。 |
suppressed | boolean | true - 返回被抑制的事件;false - 仅返回正常状态的事件。 |
symptom | boolean | true - 仅返回症状事件;false - 仅返回导致事件。 |
severities | integer/array | 仅返回具有给定事件严重性的事件。仅当对象是触发器时适用。 |
trigger_severities | integer/array | 仅返回具有给定触发严重性的事件。仅当对象是触发器时适用。 |
evaltype | integer | 标签搜索规则。 可能值: 0 - (默认)和/或; 2 - 或。 |
tags | array | 仅返回具有给定标签的事件。通过标签进行精确匹配,通过值和操作符进行不区分大小写的匹配。 格式: [{“tag”:”<tag>”, “value”:”<value>”,”operator”:”<operator>”},…] 。空数组返回所有事件。 可能的运算符类型: 0 - (默认) Like(类似于……); 1 - Equal(等于); 2 - Not like(不类似于……); 3 - Not equal(不等于); 4 - Exists(存在); 5 - Not exists(不存在)。 |
eventid_from | string | 仅返回 ID 大于或等于给定 ID 的事件。 |
eventid_till | string | 仅返回 ID 小于或等于给定 ID 的事件。 |
time_from | timestamp | 仅返回在给定时间或在给定时间之后创建的事件。 |
time_till | timestamp | 仅返回在给定时间或在给定时间之前创建的事件。 |
problem_time_from | timestamp | 仅返回从problem_time_from 设定的时间开始处于问题状态的事件。仅当事件源是触发器事件且对象为触发时适用。如果指定了 problem_time_till ,则为必填项。 |
problem_time_till | timestamp | 仅返回在problem_time_still 设定的时间之前处于问题状态的事件。仅当事件源是触发器事件且对象为触发时适用。如果指定了 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) 更新该事件的用户的username(用户名);name - (string) 更新该事件的用户的name(可见名);surname - (string) 更新事件的用户的surname(姓)。支持 count 。 |
selectAlerts | query | 返回由事件生成的告警的 告警 属性。告警按时间倒序排列。 |
selectHosts | query | 返回 主机 属性,其中 hosts 包含创建事件的对象。仅支持由触发器、监控项或 LLD 规则生成的事件。 |
selectRelatedObject | query | 返回带有创建事件的对象的 relatedObject 属性。返回的对象类型取决于事件类型。 |
selectSuppressionData | query | 返回维护列表的suppression_data 属性:maintenanceid - (ID) 维护的ID;suppress_until - (integer) 直到事件被抑制的时间。 |
selectTags | query | 返回事件标签的 标签 属性。 |
filter | object | 仅返回与给定过滤器完全匹配的结果。 接受一个对象,其中键是属性名,值是要匹配的单个值或值数组。 不支持 text 数据类型的属性。 |
sortfield | string/array | 按给定属性对结果进行排序。 可能值: eventid ,objectid 和 clock 。与 groupBy 一起使用时的可能值:objectid 。与 countOutput 和 groupBy 一起使用的可能值: objectid ,rowscount 。 |
groupBy | string/array | 根据给定的属性对结果进行分组。指定的属性将在结果中返回。 可能值: objectid 。 |
countOutput | boolean | 这些参数对所有get 方法都是通用的,详细描述请参见 参考说明。 |
editable | boolean | |
excludeSearch | boolean | |
limit | integer | |
output | query | |
preservekeys | boolean | |
search | object | |
searchByAny | boolean | |
searchWildcardsEnabled | boolean | |
sortorder | string/array | |
startSearch | boolean | |
select_acknowledges(已弃用) | 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) 更新该事件的用户的username(用户名);name - (string) 更新该事件的用户的name(可见名);surname - (string) 更新事件的用户的surname(姓)。支持 count 。 |
select_alerts(已弃用) | query | 此参数已弃用,请改用selectAlerts 。返回由事件生成的告警的 告警 属性。告警按时间倒序排列。 |
返回值
(integer/array)
返回其中一种结果:
- 一个对象数组;
- 如果已使用
countOutput
参数,但未使用groupBy
参数,则为检索到的对象的计数; - 如果使用了
groupBy
参数,则为具有聚合结果的对象数组。
示例
检索触发器事件
检索ID为 “13926” 的触发器的最新事件。
请求:
{
"jsonrpc": "2.0",
"method": "event.get",
"params": {
"output": "extend",
"selectAcknowledges": "extend",
"selectSuppressionData": "extend",
"selectTags": "extend",
"objectids": "13926",
"sortfield": ["clock", "eventid"],
"sortorder": "DESC"
},
"id": 1
}
响应:
{
"jsonrpc": "2.0",
"result": [
{
"eventid": "9695",
"source": "0",
"object": "0",
"objectid": "13926",
"clock": "1347970410",
"value": "1",
"acknowledged": "1",
"ns": "413316245",
"name": "MySQL is down",
"severity": "5",
"r_eventid": "0",
"c_eventid": "0",
"correlationid": "0",
"userid": "0",
"cause_eventid": "0",
"acknowledges": [
{
"acknowledgeid": "1",
"userid": "1",
"clock": "1350640590",
"message": "Problem resolved.\n\r----[BULK ACKNOWLEDGE]----",
"action": "6",
"old_severity": "0",
"new_severity": "0",
"suppress_until": "1472511600",
"taskid": "0",
"username": "Admin",
"name": "Zabbix",
"surname": "Administrator"
}
],
"opdata": "",
"suppression_data": [
{
"maintenanceid": "15",
"suppress_until": "1472511600",
"userid": "0"
}
],
"suppressed": "1",
"tags": [
{
"tag": "service",
"value": "mysqld"
},
{
"tag": "error",
"value": ""
}
],
"urls": []
},
{
"eventid": "9671",
"source": "0",
"object": "0",
"objectid": "13926",
"clock": "1347970347",
"value": "0",
"acknowledged": "0",
"ns": "0",
"name": "Unavailable by ICMP ping",
"severity": "4",
"r_eventid": "0",
"c_eventid": "0",
"correlationid": "0",
"userid": "0",
"cause_eventid": "0",
"acknowledges": [],
"opdata": "",
"suppression_data": [],
"suppressed": "0",
"tags": [],
"urls": []
}
],
"id": 1
}
按时间段检索事件
按时间倒序检索在 2012 年 10 月 9 日至 10 日之间创建的所有事件。
请求:
{
"jsonrpc": "2.0",
"method": "event.get",
"params": {
"output": "extend",
"time_from": "1349797228",
"time_till": "1350661228",
"sortfield": ["clock", "eventid"],
"sortorder": "desc"
},
"id": 1
}
响应:
{
"jsonrpc": "2.0",
"result": [
{
"eventid": "9695",
"source": "0",
"object": "0",
"objectid": "13926",
"clock": "1347970410",
"value": "1",
"acknowledged": "1",
"ns": "413316245",
"name": "MySQL is down",
"severity": "5",
"r_eventid": "0",
"c_eventid": "0",
"correlationid": "0",
"userid": "0",
"cause_eventid": "0",
"acknowledges": [
{
"acknowledgeid": "1",
"userid": "1",
"clock": "1350640590",
"message": "Problem resolved.\n\r----[BULK ACKNOWLEDGE]----",
"action": "6",
"old_severity": "0",
"new_severity": "0",
"suppress_until": "1472511600",
"taskid": "0",
"username": "Admin",
"name": "Zabbix",
"surname": "Administrator"
}
],
"opdata": "",
"suppression_data": [
{
"maintenanceid": "15",
"suppress_until": "1472511600",
"userid": "0"
}
],
"suppressed": "1",
"tags": [
{
"tag": "service",
"value": "mysqld"
},
{
"tag": "error",
"value": ""
}
],
"urls": []
},
{
"eventid": "9671",
"source": "0",
"object": "0",
"objectid": "13926",
"clock": "1347970347",
"value": "0",
"acknowledged": "0",
"ns": "0",
"name": "Unavailable by ICMP ping",
"severity": "4",
"r_eventid": "0",
"c_eventid": "0",
"correlationid": "0",
"userid": "0",
"cause_eventid": "0",
"acknowledges": [],
"opdata": "",
"suppression_data": [],
"suppressed": "0",
"tags": [],
"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": "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 agent on localhost is unreachable for 5 minutes",
"acknowledged": "1",
"severity": "3",
"cause_eventid": "0",
"acknowledges": [
{
"userid": "10",
"action": "2"
}
],
"opdata": "",
"suppressed": "0",
"urls": []
}
],
"id": 1
}
检索具有问题事件计数的顶级触发器
检索严重程度为”Warning”, “Average”, “High”, or “Disaster”的前5个触发器,以及指定时间段内的问题事件数。
请求:
{
"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
}
响应:
{
"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
}
参见
来源
ui/include/classes/api/services/CEvent.php 中的 CEvent::get() 。