更新规则 API编辑

更新现有规则的属性。

有关最新的 API 详细信息,请参阅开放 API 规范

请求编辑

PUT <kibana 主机>:<端口>/api/alerting/rule/<id>

PUT <kibana 主机>:<端口>/s/<空间 ID>/api/alerting/rule/<id>

先决条件编辑

您必须拥有相应 Kibana 功能的全部权限,具体取决于您要更新的规则的使用者rule_type_id。例如,管理 > 堆栈规则功能、分析 > 发现机器学习功能、可观测性安全功能。如果规则具有操作,则您还必须对管理 > 操作和连接器功能具有读取权限。有关更多详细信息,请参阅功能权限

路径参数编辑

id
(必填,字符串)要更新的规则的 ID。
space_id
(可选,字符串)空间的标识符。如果 URL 中未提供space_id,则使用默认空间。

请求正文编辑

actions

(可选,对象数组)操作对象数组。默认值为一个空数组 ([])。

操作对象的属性
group
(必填,字符串)建议对不同类型的警报进行分组操作以进行升级。如果不需要,请将值设置为default
id
(必填,字符串)操作的标识符。
params
(必填,对象)连接器类型将接收的params的映射。params被视为 Mustache 模板处理,并传递一组默认上下文。
name
(必填,字符串)用于引用和搜索的名称。
notify_when
(必填,字符串)限制通知的条件:onActionGroupChangeonActiveAlertonThrottleInterval
params
(必填,对象)要传递给规则类型执行器params值的 parameters。如果已定义,这还将根据规则类型参数验证器进行验证。
schedule

(必填,对象)何时运行此规则。使用一种可用的计划格式。

计划格式

计划使用键:值格式。Kibana 当前支持*间隔格式*,该格式指定运行规则的间隔(以秒、分钟、小时或天为单位)。例如:{ "interval": "10s" }{ "interval": "5m" }{ "interval": "1h" }{ "interval": "1d" }

tags
(可选,字符串数组)用于引用和搜索的关键字列表。默认值为一个空数组 ([])。
throttle
(可选,字符串)此规则应多久触发一次相同的操作。这将阻止规则反复发送相同的通知。例如,如果计划为 1 分钟的规则在触发状态下保持 90 分钟,将throttle设置为10m1h将阻止它在此期间发送 90 个通知。默认值为null

响应代码编辑

200
表示调用成功。

示例编辑

更新 ID 为ac4e6b90-6be7-11eb-ba0d-9b1c1f912d74的索引阈值规则

PUT api/alerting/rule/ac4e6b90-6be7-11eb-ba0d-9b1c1f912d74
{
  "notify_when": "onActionGroupChange",
  "params": {
    "index":[".test-index"],
    "timeField":"@timestamp",
    "groupBy":"top",
    "aggType":"avg",
    "timeWindowSize":5,
    "timeWindowUnit":"m",
    "thresholdComparator":">",
    "threshold":[1000],
    "aggField":"sheet.version",
    "termField":"name.keyword",
    "termSize":6
  },
  "schedule": {
    "interval": "1m"
  },
  "actions": [],
  "tags": [],
  "name": "new name",
  "throttle": null
}

API 返回以下内容

{
  "id": "ac4e6b90-6be7-11eb-ba0d-9b1c1f912d74",
  "consumer": "alerts",
  "tags": [],
  "name": "new name",
  "enabled": true,
  "throttle": null,
  "schedule": {
    "interval": "1m"
  },
  "params": {
    "index": [".updated-index"],
    "timeField": "@timestamp",
    "groupBy": "top",
    "aggType": "avg",
    "timeWindowSize": 5,
    "timeWindowUnit": "m",
    "thresholdComparator": ">",
    "threshold": [1000],
    "aggField": "sheet.version",
    "termField": "name.keyword",
    "termSize": 6
  },
  "api_key_owner": "elastic",
  "created_by": "elastic",
  "updated_by": "elastic",
  "rule_type_id": ".index-threshold",
  "scheduled_task_id": "4c5eda00-e74f-11ec-b72f-5b18752ff9ea",
  "created_at": "2022-12-12T22:43:20.578Z",
  "updated_at": "2022-12-12T22:44:21.783Z",
  "notify_when": "onActionGroupChange",
  "mute_all": false,
  "muted_alert_ids": [],
  "execution_status": {
    "status": "ok",
    "last_execution_date": "2022-12-12T22:43:21.723Z",
    "last_duration": 125
  },
  "actions":[],
  "last_run":{
    "alerts_count": {
      "new": 0,
      "ignored": 0,
      "recovered": 0,
      "active": 0
    },
    "outcome_msg" :null,
    "warning": null,
    "outcome": "succeeded"
  },
  "next_run": "2022-12-12T22:44:21.653Z"
}