2022 Zabbix中国峰会
2022 Zabbix中国峰会

确认

描述

object event.acknowledge(object/array parameters)

此方法允许更新事件。可以执行以下更新操作:

  • 关闭事件。如果事件已解决,则将跳过此操作。
  • 确认事件。如果事件已被确认,则将跳过此操作。
  • 未确认事件。如果事件未被确认,则将跳过此操作。
  • 添加消息。
  • 更改事件严重性。如果事件已经具有相同的严重性,则将跳过此操作。
  • 抑制事件。如果事件已被抑制,则将跳过此操作。
  • 未抑制事件。如果事件未被抑制,则将跳过此操作。

只能更新触发器事件。
只能更新问题事件。
需要触发器的读/写权限才能关闭事件或更改事件的严重性。
要关闭事件,触发器中应允许手动关闭。

此方法适用于任何类型的用户。可以在用户角色设置中撤销调用该方法的权限。参见用户角色 了解更多信息。

参数

(object/array) 包含事件ID和应执行的更新操作的参数。

参数 类型 描述
eventids ID/array 确认事件的ID。

属性行为
- 必需
action integer 事件更新操作。这是位掩码字段,可以接受任何值组合。

可能的位图值:
1 - 关闭问题;
2 - 确认事件;
4 - 添加消息;
8 - 更改严重性;
16 - 未确认事件;
32 - 抑制事件;
64 - 未抑制事件;
128 - 将事件等级更改为原因;
256 - 将事件等级更改为症状。

参数行为
- 必需
cause_eventid ID 原因事件的 ID。

参数行为
- 必需 如果 action 包含“将事件等级更改为症状”位
message string 消息的文本。
如果操作包含“添加消息”标志,则该字段必需
severity integer 事件的新严重性。

可能值:
0 - 未分类;
1 - 信息;
2 - 警告;
3 - 一般严重;
4 - 严重;
5 - 灾难。

参数行为:
- 必需 如果 action 包含"更改严重性"位。
suppress_until integer 直到必须抑制该事件为止的 Unix 时间戳。

如果设置为“0”,抑制将是不确定的。

参数行为
- 必需 如果 action 包含"抑制事件"位。

返回值

(object) 返回一个对象, 该对象包含 eventids 属性下更新的事件 ID。

示例

确认事件

确认单个事件并留言。

请求

{
           "jsonrpc": "2.0",
           "method": "event.acknowledge",
           "params": {
               "eventids": "20427",
               "action": 6,
               "message": "Problem resolved."
           },
           "id": 1
       }

响应:

{
           "jsonrpc": "2.0",
           "result": {
               "eventids": [
                   "20427"
               ]
           },
           "id": 1
       }

更改事件的严重性

更改多个事件的严重性并留言。

请求

{
           "jsonrpc": "2.0",
           "method": "event.acknowledge",
           "params": {
               "eventids": ["20427", "20428"],
               "action": 12,
               "message": "Maintenance required to fix it.",
               "severity": 4
           },
           "id": 1
       }

响应:

{
           "jsonrpc": "2.0",
           "result": {
               "eventids": [
                   "20427",
                   "20428"
               ]
           },
           "id": 1
       }

来源

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