确认

描述

object event.acknowledge(object/array parameters)

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

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

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

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

参数

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

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

参数行为:
- 必填
action 整数 事件更新操作。

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

这是一个位字段;任何可能的位图值之和都是可接受的(例如,34表示确认和抑制事件)。

参数行为:
- 必填
cause_eventid ID 原因事件ID。

参数行为:
- 必填 如果 action 包含 "将事件等级更改为症状" 位
message 字符串 消息的文本。

参数行为:
- 必填 如果 action 包含 "添加消息" 位
severity 整数 事件的新严重性。

可能的值:
0 - 未分类;
1 - 信息;
2 - 警告;
3 - 平均;
4 - 高;
5 - 灾难。

参数行为:
- 必填 如果 action 包含 "更改严重性" 位
suppress_until 整数 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() 。