报警管理接口V2
更新时间:2025-04-02
创建报警策略
请求结构
- method:POST
- URL:/csm/api/v2/userId/{userId}/services/{service}/alarm/config/create
请求参数
名称 | 类型 | 描述 | 是否必须 | 参数位置 |
---|---|---|---|---|
userId | String | 用户ID | 是 | Path参数 |
service | String | 云产品名称 | 是 | Path参数 |
alarmConfigV2 | AlarmConfigV2 | 报警配置 | 是 | RequestBody参数 |
请求示例
JSON
1{
2 "userId": "453bf9********************9090dc",
3 "aliasName": "虚机CPU监控",
4 "region": "bj",
5 "scope": "BCE_BCC",
6 "policies": [
7 {
8 "rules": [
9 {
10 "metricName": "CpuUsage",
11 "metricDimensions": [],
12 "operator": ">",
13 "statistics": "average",
14 "threshold": 80,
15 "window": 60,
16 },
17 ],
18 "alarmPendingPeriodCount": 3
19 }
20 ],
21
22 "insufficientDataPendingPeriod": 300,
23 "alarmRepeatInterval": 300,
24 "alarmRepeatCount": 10,
25 "targetType": "TARGET_TYPE_MULTI_INSTANCES",
26 "targetInstances": [
27 {
28 "region": "bj",
29 "identifiers": [
30 {
31 "key": "InstanceId",
32 "value": "i-FYc6EU**"
33 }
34 ]
35 }
36 ],
37 "resourceType": "Instance",
38 "alarmLevel": "NOTICE",
39 "actions": [
40 {
41 "name": "notifyRdTeam",
42 "id": "0262f103-****-****-****-078d0f2d80c5",
43 },
44 ]
45}
响应示例
成功响应示例
JSON
1{
2 "success": true,
3 "msg": "",
4 "result": {
5 // 策略名,唯一索引报警策略,用于后续的删除和更新操作
6 "alarmName": "5cc380********************268123",
7 }
8}
失败响应示例
JSON
1{
2 "success": false,
3 "msg": "Invalid parameter, aliasName is empty!",
4 "result": {
5 "alarmName": null
6 }
7}
更新报警策略
请求结构
- method:PUT
- URL:/csm/api/v2/userId/{userId}/services/{service}/alarm/config/update
请求参数
名称 | 类型 | 描述 | 是否必须 | 参数位置 |
---|---|---|---|---|
userId | String | 用户ID | 是 | Path参数 |
service | String | 云产品名称 | 是 | Path参数 |
alarmConfigV2 | AlarmConfigV2 | 报警配置 | 是 | RequestBody参数 |
请求示例
JSON
1// Request
2{
3 // 策略名,由策略创建接口返回
4 "alarmName": "5cc380********************268123",
5
6 // 其余字段同策略创建接口
7 // 注意,目前报警策略不支持部分更新,只能全量更新
8}
屏蔽报警策略
请求结构
- method:POST
- URL:/csm/api/v2/userId/{userId}/services/{service}/alarm/config/block?{Query参数}
请求参数
名称 | 类型 | 描述 | 是否必须 | 参数位置 |
---|---|---|---|---|
userId | String | 用户ID | 是 | Path参数 |
service | String | 云产品名称 | 是 | Path参数 |
alarmName | String | 策略名(参考创建报警策略接口返回值) | 是 | Query参数 |
请求示例
JSON
1POST /csm/api/v2/userId/453bf9********************9090dc/services/BCE_BCC/alarm/config/block?
2alarmName=5cc380********************268123
开启报警策略
请求结构
- method:POST
- URL:/csm/api/v2/userId/{userId}/services/{service}/alarm/config/unblock?{Query参数}
请求参数
名称 | 类型 | 描述 | 是否必须 | 参数位置 |
---|---|---|---|---|
userId | String | 用户ID | 是 | Path参数 |
service | String | 云产品名称 | 是 | Path参数 |
alarmName | String | 策略名(参考创建报警策略接口返回值) | 是 | Query参数 |
请求示例
JSON
1POST /csm/api/v2/userId/453bf9********************9090dc/services/BCE_BCC/alarm/config/unblock?
2alarmName=5cc380********************268123
查看报警策略
请求结构
- Method:GET
- URL:/csm/api/v2/userId/{userId}/services/{service}/alarm/config?{Query参数}
请求参数
名称 | 类型 | 描述 | 是否必须 | 参数位置 |
---|---|---|---|---|
userId | String | 用户id | 是 | Query参数 |
service | String | 云产品名称 | 是 | Query参数 |
alarmName | String | 报警名 | 是 | Query参数 |
请求示例
JSON
1GET /csm/api/v2/userId/453bf9********************9090dc/services/BCE_BCC/alarm/config?
2alarmName=5cc380********************268123
响应示例
JSON
1{
2 "alarmName": "5cc380********************268123", // 报警策略唯一标识,UUID类型
3 // 其余字段参考附录中的AlarmConfigV2
4}
查看报警策略列表
请求结构
- Method:GET
- URL:/csm/api/v2/userId/{userId}/services/{service}/alarm/config/list?{Query参数}
请求参数
名称 | 类型 | 描述 | 是否必须 | 参数位置 |
---|---|---|---|---|
userId | String | 用户ID,用于指定查询的用户。 | 是 | Query参数 |
service | String | 需要查询告警的云产品,以scope参数为准 | 是 | Query参数 |
order | String | 排序方式(如升序或降序)。 | 是 | Query参数 |
pageNo | Integer | 分页查询的页码 | 是 | Query参数 |
pageSize | Integer | 每页返回的条目数 | 是 | Query参数 |
scope | String | 指定告警的云产品 | 否 | Query参数 |
region | String | 指定告警所属的region | 否 | Query参数 |
dimensions | String | 按照指定维度筛选告警 | 否 | Query参数 |
metricDimensions | String | 按照指标维度筛选告警 | 否 | Query参数 |
actionEnabled | Boolean | 是否启用了告警 | 否 | Query参数 |
typeName | String | 告警的资源类型 | 否 | Query参数 |
id | String | ID | 资源id | Query参数 |
uuid | String | UUID | 资源uuid | Query参数 |
alarmNamePrefix | String | 报警名前缀,启用模糊查询 | 否 | Query参数 |
请求示例
JSON
1GET /csm/api/v2/userId/453bf**********9090dc/services/BCE_BCC/alarm/config/list?order=desc&pageNo=1&pageSize=2®ion=bj&typeName=Instance&id=i-O8WtQNyQ
响应示例
JSON
1// Response
2{
3 "orderBy": "",
4 "order": "",
5 "pageNo": 1,
6 "pageSize": 2,
7 "totalCount": 455,
8 "result": [
9 {
10 "userId": "453bf95**************090dc",
11 "aliasName": "test-gz-rmq-0311",
12 "alarmName": "85ffe3ee34bf4ab0bcf0958d33c461cb",
13 "scope": "BCE_ROCKETMQ",
14 "targetType": "TARGET_TYPE_ALL_INSTANCES",
15 "resourceType": "Cluster",
16 "alarmLevel": "MAJOR",
17 "targetInstanceGroups": [],
18 "targetInstanceTags": [],
19 "callbackUrl": "",
20 "callbackToken": "",
21 "insufficientDataPendingPeriod": 0,
22 "alarmRepeatInterval": 0,
23 "alarmRepeatCount": 0,
24 "source": "",
25 "alarmMergeIntervalSecond": 0,
26 "policies": [
27 {
28 "rules": [
29 {
30 "metricName": "ClusterTopicCount",
31 "metricDimensions": [],
32 "operator": ">",
33 "statistics": "average",
34 "threshold": 50.0,
35 "window": 60
36 }
37 ],
38 "alarmPendingPeriodCount": 1
39 }
40 ],
41 "targetInstances": [],
42 "actions": []
43 },
44 {
45 "userId": "453bf9588c9e488f9ba2c984129090dc",
46 "aliasName": "sandbox_test_notify",
47 "alarmName": "34cf2c7f34b447fb86ee51203931ab2c",
48 "scope": "BCE_BCC",
49 "targetType": "TARGET_TYPE_MULTI_INSTANCES",
50 "resourceType": "Instance",
51 "alarmLevel": "MAJOR",
52 "targetInstanceGroups": [],
53 "targetInstanceTags": [],
54 "callbackUrl": "",
55 "callbackToken": "",
56 "insufficientDataPendingPeriod": 0,
57 "alarmRepeatInterval": 0,
58 "alarmRepeatCount": 0,
59 "source": "",
60 "alarmMergeIntervalSecond": 0,
61 "policies": [
62 {
63 "rules": [
64 {
65 "metricName": "CPUUsagePercent",
66 "metricDimensions": [],
67 "operator": ">",
68 "statistics": "average",
69 "threshold": 0.0,
70 "window": 60
71 }
72 ],
73 "alarmPendingPeriodCount": 1
74 }
75 ],
76 "targetInstances": [
77 {
78 "region": "bj",
79 "identifiers": [
80 {
81 "key": "InstanceId",
82 "value": "i-O8WtQNyQ"
83 }
84 ],
85 "metricDimensions": []
86 },
87 {
88 "region": "bj",
89 "identifiers": [
90 {
91 "key": "InstanceId",
92 "value": "i-Hk4ejWVT"
93 }
94 ],
95 "metricDimensions": []
96 },
97 {
98 "region": "bj",
99 "identifiers": [
100 {
101 "key": "InstanceId",
102 "value": "i-amuAeiKM"
103 }
104 ],
105 "metricDimensions": []
106 },
107 {
108 "region": "bj",
109 "identifiers": [
110 {
111 "key": "InstanceId",
112 "value": "i-M96hN3s1"
113 }
114 ],
115 "metricDimensions": []
116 },
117 {
118 "region": "bj",
119 "identifiers": [
120 {
121 "key": "InstanceId",
122 "value": "i-wAxU6sDS"
123 }
124 ],
125 "metricDimensions": []
126 }
127 ],
128 "actions": []
129 }
130 ]
131}
附录
AlarmConfigV2
名称 | 类型 | 描述 |
---|---|---|
userId | String | 用户id,必填 |
aliasName | String | 报警策略展示名,必填 |
region | String | 报警策略所属地域,必填,针对多实例类型报警策略此处region必须和实例所属region保持一致 |
scope | String | 云产品名称,必填 |
insufficientDataPendingPeriod | int | 无数据检查周期,单位:秒,选填,若未设置或设置为0,表示不进行无数据报警 |
alarmRepeatInterval | int | 重复报警周期,取值必须大于或等于300,单位:秒,选填,若未设置或设置为0,表示不进行重复报警 |
alarmRepeatCount | int | 重复报警最大次数,选填 |
resourceType | String | 云产品的子产品类型,选填,默认值Instance |
alarmLevel | String | 报警级别,选填,默认CRITICAL,可选项:NOTICE(通知)、WARNING(警告)、MAJOR(重要)、CRITICAL(严重) |
targetType | String | 报警目标类型,必填,可选项: TARGET_TYPE_ALL_INSTANCES(全部实例) TARGET_TYPE_INSTANCE_GROUP(实例组) TARGET_TYPE_MULTI_INSTANCES(多实例) TARGET_TYPE_INSTANCE_TAGS(标签) |
targetInstanceGroups | List<String> | 报警实例组列表,若targetType=TARGET_TYPE_INSTANCE_GROUP,该字段必填 |
targetInstances | List<AlarmInstanceV2> | 报警实例列表,若targetType=TARGET_TYPE_MULTI_INSTANCES,该字段必填 |
targetInstanceTags | List<CommonKV> | 报警标签列表,若targetType=TARGET_TYPE_INSTANCE_TAGS,该字段必填 |
policies | List<AlarmPolicyV2> | 报警策略列表,必填,多个策略之间是或关系 |
actions | List<AlarmActionV2> | 通知模板列表,必填,该模板列表将被统一用于异常通知,恢复正常通知,重复报警通知 |
AlarmPolicyV2
名称 | 类型 | 描述 |
---|---|---|
rules | List<AlarmConfigPolicyRuleV2> | 报警规则列表,必填,多个规则之间是且关系 |
alarmPendingPeriodCount | int | 连续发生alarmPendingPeriodCount次检测异常后,触发警报,必填,取值必须大于0 |
AlarmConfigPolicyRuleV2
名称 | 类型 | 描述 |
---|---|---|
metricName | String | 监控项名称,必填 |
metricDimensions | List<CommonKV> | 指标维度,选填 |
operator | String | 阈值比较方式,必填,可选值: 1. 一般比较符:>、>=、=、<、<=、!= 2. 环比比较符:环比增长>、环比增长>=、环比增长=、环比增长<、环比增长<=、环比增长!=、环比减少>、环比减少>=、环比减少=、环比减少<、环比减少<=、环比减少!= |
statistics | String | 指标聚合方式,必填,可选值:average(平均值)、maximum(最大值)、minimum(最小值)、sum(和值) |
threshold | double | 报警阈值,必填 |
window | int | 指标聚合窗口,单位:秒,选填,默认值:60 |
AlarmActionV2
名称 | 类型 | 描述 |
---|---|---|
name | String | 通知模板名称,必填,模板名称是可以重复的 |
id | String | 通知模板id,选填 |
AlarmInstanceV2
名称 | 类型 | 描述 |
---|---|---|
region | String | 地域,必填 |
identifiers | List<CommonKV> | 实例维度,必填 |
metricDimensions | List<CommonKV> | 指标维度,选填 |
CommonKV
名称 | 类型 |
---|---|
key | String |
value | String |