integer/array event.get(object parameters)
该方法允许根据给定的参数检索事件。
如果某些事件尚未被看门狗(housekeeper)移除, 此方法可能会返回已删除实体的事件。
此方法适用于任何类型的用户。调用该方法的权限可以在用户角色设置中撤销。更多信息请参见 User roles。
(object) 参数定义了所需的输出。
该方法支持以下参数。
参数 | 数据类型 | 描述 |
---|---|---|
eventids | ID/array | 仅返回具有指定 ID 的事件。 |
groupids | ID/array | 仅返回由属于给定 主机 组的 objects 创建的事件。 |
hostids | ID/array | 仅返回由objects创建的,并属于给定主机的事件。 |
objectids | ID/array | 仅返回由给定的 objects 创建的事件。 |
source | integer | 仅返回具有指定类型的时间。 有关支持的事件类型的列表,请参考事件。 默认值:0 - 触发器事件。 |
object | integer | 仅返回由指定类型的 objects 创建的事件。 有关支持的 object 类型列表,请参阅 事件。 默认值:0 - 触发器。 |
acknowledged | boolean | 如果设置为 true ,则仅返回已确认的事件。 |
action | integer | 仅返回执行过给定 event update actions 的事件。对于多个动作,使用任意可接受的位图值的和作为位掩码(例如,34 用于 acknowledge 并抑制事件)。 |
action_userids | ID/array | 仅返回具有指定用户 ID 的事件,这些用户执行了 update 操作。 |
suppressed | boolean | true - 仅返回被抑制的事件;false - 返回正常状态的事件。 |
symptom | boolean | true - 仅返回症状事件;false - 仅返回原因事件。 |
severities | integer/array | 仅返回具有指定事件严重性的事件。仅在 object 为触发器时适用。 |
trigger_severities | integer/array | 仅返回具有指定触发器严重级别的事件。仅当 object 为触发器时适用。 |
evaltype | integer | 标签搜索规则。 可能的值: 0 - (默认)And/Or; 2 - Or。 |
tags | array | 仅返回具有指定标签的事件。根据标签进行精确匹配,并根据值和运算符进行不区分大小写的搜索。 格式: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...] 。空的 array 将返回所有事件。 可能的运算符类型: 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 起一直处于问题状态的事件,无论其当前状态如何。仅当源为触发器事件且 object 是触发器时适用。如果指定了 problem_time_till ,则此参数为必填项。 |
problem_time_till | timestamp | 仅返回那些在 problem_time_till 之前处于问题状态的事件,无论其当前状态如何。仅当源为触发器事件且 object 为触发器时适用。如果指定了 problem_time_from ,则此参数是必需的。 |
value | integer/array | 仅返回具有给定值的事件。 |
selectAcknowledges | query | 返回一个包含事件更新的 acknowledges 属性。事件更新按逆时间顺序排序。事件 update object 具有以下属性: acknowledgeid - (ID) 确认的 ID;userid - (ID) 更新事件的用户的 ID;clock - (timestamp) 事件更新的时间;message - (string) 消息文本;action - (integer) 执行的 update 操作,参见 event.acknowledge ;old_severity - (integer) 此次 update 操作前的事件严重性;new_severity - (integer) 此次 update 操作后的事件严重性;suppress_until - (timestamp) 事件被抑制的时间;taskid - (ID) 如果当前事件正在进行等级更改,则为任务的 ID;username - (string) 更新事件的用户的用户名;name - (string) 更新事件的用户的名称;surname - (string) 更新事件的用户的姓氏。支持 count 。 |
selectAlerts | query | 返回一个包含事件生成的告警的 alerts 属性。告警按逆时间顺序排序。 |
selectHosts | query | 返回一个包含 主机 的 hosts 属性,其中包含创建事件的 object。仅支持由触发器、监控项 或 LLD 规则生成的事件。 |
selectRelatedObject | query | 返回一个 relatedObject 属性,其中包含创建事件的 object。返回的 object 类型取决于事件类型。 |
selectSuppressionData | query | 返回一个包含活动维护和手动抑制列表的 suppression_data 属性:maintenanceid - (ID) 维护的 ID;userid - (ID) 抑制事件的用户 ID;suppress_until - (integer) 事件被抑制的时间。 |
selectTags | query | 返回带有事件标签的 tags 属性。 |
filter | object | 仅返回与给定过滤器完全匹配的结果。 接受一个object,其中键为属性名称,值为单个值或一个array值列表进行匹配。 不支持 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 (deprecated) |
query | 该参数已弃用,请改用 selectAcknowledges 。返回一个包含事件更新的 acknowledges 属性。事件更新按逆时间顺序排序。 事件 update object 具有以下属性: acknowledgeid - (ID) 确认的ID;userid - (ID) 更新事件用户的ID;clock - (timestamp) 事件更新时间;message - (string) 消息文本;action - (integer) update 执行的操作,参见 event.acknowledge ;old_severity - (integer) 此 update 操作前的事件严重性;new_severity - (integer) 此 update 操作后的事件严重性;suppress_until - (timestamp) 事件被抑制的时间;taskid - (ID) 任务ID,如果当前事件正在进行等级更改;username - (string) 更新事件用户的用户名;name - (string) 更新事件用户的名称;surname - (string) 更新事件用户的姓氏。支持 count 。 |
select_alerts (deprecated) |
query | 此参数已弃用,请改用 selectAlerts 。返回一个 alerts 属性,其中包含事件生成的警报。警报按逆时间顺序排序。 |
(integer/array)
返回以下之一:
countOutput
参数但未使用 groupBy
参数,则返回检索到的 objects 的数量;groupBy
参数,则返回带有聚合结果的 objects 的 array。从触发器 "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
}
检索2012年10月17至18之间创建的所有事件,并按逆时间顺序排列。
执行请求:
{
"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检索已确认的事件,用户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
}
检索具有严重级别为“Warning”、“Average”、“High”或“Disaster”的Top 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
}
CEvent::get()
在 ui/include/classes/api/services/CEvent.php 中。