更新时间:2024-01-04 GMT+08:00

创建告警规则

功能介绍

创建告警规则

调用方法

请参见如何调用API

URI

POST /v2/{project_id}/alarms

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

租户ID

最小长度:1

最大长度:64

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

Content-Type

String

发送的实体的MIME类型。默认使用application/json; charset=UTF-8。

缺省值:application/json; charset=UTF-8

最小长度:1

最大长度:64

X-Auth-Token

String

用户Token

最小长度:1

最大长度:16384

表3 请求Body参数

参数

是否必选

参数类型

描述

name

String

告警名称, 只能包含0-9/a-z/A-Z/_/-或汉字,长度1-128

description

String

告警描述,长度0-256

namespace

String

查询服务的命名空间,各服务命名空间请参考“服务命名空间

resource_group_id

String

资源分组ID,监控范围为资源分组时必传

resources

Array<Array<Dimension>>

资源列表,告警规则类型为全部资源、资源分组时,资源维度值传空;告警规则类型为指定资源时,资源维度值必填,可以同时指定监控多个资源。

数组长度:0 - 1000

policies

Array of Policy objects

告警策略

数组长度:1 - 50

type

String

告警规则类型,ALL_INSTANCE为全部资源指标告警,RESOURCE_GROUP为资源分组指标告警,MULTI_INSTANCE为指定资源指标告警,EVENT.SYS为系统事件告警,EVENT.CUSTOM自定义事件告警,DNSHealthCheck为健康检查告警;

枚举值:

  • EVENT.SYS

  • EVENT.CUSTOM

  • DNSHealthCheck

  • RESOURCE_GROUP

  • MULTI_INSTANCE

  • ALL_INSTANCE

alarm_notifications

Array of Notification objects

告警触发的动作

ok_notifications

Array of Notification objects

告警恢复触发的动作

notification_begin_time

String

告警通知开启时间

notification_end_time

String

告警通知关闭时间

enterprise_project_id

String

企业项目ID

enabled

Boolean

告警开关

notification_enabled

Boolean

是否开启告警通知

alarm_template_id

String

告警规则关联告警模板ID,如果传了,告警规则关联的策略会和告警模板策略联动变化

表4 Dimension

参数

是否必选

参数类型

描述

name

String

资源维度,如:弹性云服务器,则维度为instance_id;目前最大支持4个维度,各服务资源的指标维度名称可查看:“服务维度名称”。

正则匹配:^([a-z]|[A-Z]){1}([a-z]|[A-Z]|[0-9]|_|-){1,32}$

value

String

资源维度值,为资源的实例ID,如:4270ff17-aba3-4138-89fa-820594c39755。

正则匹配:^((([a-z]|[A-Z]|[0-9]){1}([a-z]|[A-Z]|[0-9]|_|-|\.)*)|\*){1,256}$

表5 Policy

参数

是否必选

参数类型

描述

metric_name

String

资源的监控指标名称,必须以字母开头,只能包含0-9/a-z/A-Z/_,字符长度最短为1,最大为64;如:弹性云服务器中的监控指标cpu_util,表示弹性服务器的CPU使用率;文档数据库中的指标mongo001_command_ps,表示command执行频率;各服务的指标名称可查看:“服务指标名称”。

period

Integer

指标周期,单位是秒; 0是默认值,例如事件类告警该字段就用0即可; 1代表指标的原始周期,比如RDS监控指标原始周期是60s,表示该RDS指标按60s周期为一个数据点参与告警计算;如想了解各个云服务的指标原始周期可以参考“支持服务列表”,300代表指标按5分钟聚合周期为一个数据点参与告警计算。

最小值:0

最大值:86400

枚举值:

  • 0

  • 1

  • 300

  • 1200

  • 3600

  • 14400

  • 86400

filter

String

聚合方式, 支持的值为(average|min|max|sum)

comparison_operator

String

阈值符号, 支持的值为(>|<|>=|<=|=|!=|cycle_decrease|cycle_increase|cycle_wave);cycle_decrease为环比下降,cycle_increase为环比上升,cycle_wave为环比波动; 指标告警可以使用的阈值符号有>、>=、<、<=、=、!=、cycle_decrease、cycle_increase、cycle_wave; 事件告警可以使用的阈值符号为>、>=、<、<=、=、!=;

value

Number

阈值

unit

String

单位

count

Integer

次数,事件告警时参数值为1~180(包括1和180);指标告警和站点告警时,次数采用枚举值,枚举值分别为:1、2、3、4、5、10、15、30、60、90、120、180

suppress_duration

Integer

告警抑制时间,单位为秒,对应页面上创建告警规则时告警策略最后一个字段,该字段主要为解决告警频繁的问题,0代表不抑制,满足条件即告警;300代表满足告警触发条件后每5分钟告警一次;

最小值:0

最大值:86400

枚举值:

  • 0

  • 300

  • 600

  • 900

  • 1800

  • 3600

  • 10800

  • 21600

  • 43200

  • 86400

level

Integer

告警级别, 1为紧急,2为重要,3为次要,4为提示

表6 Notification

参数

是否必选

参数类型

描述

type

String

通知类型, notification代表通过SMN通知

正则匹配:^(notification|autoscaling|ecsRecovery|contact|contactGroup|iecAction)$

notification_list

Array of strings

告警状态发生变化时,被通知对象的列表。topicUrn可从SMN获取,具体操作请参考查询Topic列表。当type为notification时,notification_list列表不能为空。 说明:若alarm_action_enabled为true,对应的alarm_actions、ok_actions至少有一个不能为空。若alarm_actions、ok_actions同时存在时,notification_list值保持一致。

数组长度:0 - 20

响应参数

状态码: 201

表7 响应Body参数

参数

参数类型

描述

alarm_id

String

告警规则id,以al开头,包含22个数字或字母

状态码: 400

表8 响应Body参数

参数

参数类型

描述

error_code

String

请求异常内部业务状态码

最小长度:0

最大长度:256

error_msg

String

请求异常信息

最小长度:0

最大长度:256

request_id

String

请求ID

最小长度:0

最大长度:256

状态码: 500

表9 响应Body参数

参数

参数类型

描述

error_code

String

请求异常内部业务状态码

最小长度:0

最大长度:256

error_msg

String

请求异常信息

最小长度:0

最大长度:256

request_id

String

请求ID

最小长度:0

最大长度:256

请求示例

创建一个名称为alarm-lxy-rg-RDS,告警类型为资源分组指标告警,每24小时告警一次、告警级别重要的告警规则。

{
  "name" : "alarm-lxy-rg-RDS",
  "description" : "",
  "namespace" : "SYS.RDS",
  "type" : "RESOURCE_GROUP",
  "resources" : [ [ {
    "name" : "rds_cluster_id"
  } ] ],
  "policies" : [ {
    "metric_name" : "rds001_cpu_util",
    "period" : 1,
    "filter" : "average",
    "comparison_operator" : ">=",
    "value" : 0,
    "unit" : "%",
    "count" : 1,
    "suppress_duration" : 86400,
    "level" : 2
  } ],
  "enabled" : true,
  "notification_enabled" : false,
  "resource_group_id" : "rg1623429506587NbRweoa3J",
  "enterprise_project_id" : "a9d919b7-0456-4bb8-b470-6a23b64f4f7e",
  "alarm_template_id" : "at1628592157541dB1klWgY6"
}

响应示例

状态码: 201

告警创建成功

{
  "alarm_id" : "alCzk8o9dtSQHtiDgb44Eepw"
}

状态码

状态码

描述

201

告警创建成功

400

参数校验失败

500

系统内部错误

错误码

请参见错误码