创建报警策略CreateAlarmPolicy
更新时间:2026-06-23
- 创建报警策略,当符合报警条件时发送报警通知。
API Explorer
去调试
您可以在 API Explorer 中直接运行该接口,免去您计算签名的困扰。运行成功后,API Explorer 可以自动生成 SDK 代码示例。
请求结构
Plain Text
1POST /v{version}/alarm/policy HTTP/1.1
2Host: xxx.bj.baidubce.com
3Authorization: authorization string
4
5{
6 "name": <name>,
7 "objects": <objects>,
8 "targets": <targets>,
9 "triggerConditions": <triggerConditions>,
10 "groups": <groups>,
11 "schedule": <schedule>,
12 "pendingCount": <pendingCount>,
13 "repeatIntervalMinute": <repeatIntervalMinute>,
14 "recoverWithoutNotice": <recoverWithoutNotice>,
15 "state": <state>,
16 "noticeState": <noticeState>,
17 "notices": <notices>,
18 "noticeRawLogs": <noticeRawLogs>,
19}
请求头域
除公共头域外,无其他特殊头域
请求参数
| 参数名称 | 类型 | 是否必需 | 参数位置 | 描述 |
|---|---|---|---|---|
| version | String | 是 | URL参数 | API版本号,当前取值为1 |
| name | String | 是 | RequestBody参数 | 报警策略名称,不能重复 |
| objects | List<LogStore> | 否 | RequestBody参数 | 监控对象列表,当所有日志集共享目标日志集时,填写该字段 |
| targets | List<Target> | 是 | RequestBody参数 | 执行语句列表 |
| triggerConditions | List<TriggerCondition> | 是 | RequestBody参数 | 触发条件列表 |
| groups | List |
否 | RequestBody参数 | 分组触发 |
| schedule | Schedule | 是 | RequestBody参数 | 执行周期 |
| pendingCount | Int | 是 | RequestBody参数 | 连续触发阈值,连续多少次触发阈值则报警 |
| repeatIntervalMinute | Int | 否 | RequestBody参数 | 重复报警间隔,单位:分钟,默认值:0,表示关闭重复报警 |
| recoverWithoutNotice | Bool | 否 | RequestBody参数 | 恢复后是否通知 true:不通知, false:通知, 默认值为false |
| state | String | 否 | RequestBody参数 | 策略启用状态,ENABLED: 已启用, DISABLED: 已禁用 |
| noticeState | String | 否 | RequestBody参数 | 下通知启用状态,ENABLED: 已启用, DISABLED: 已禁用 |
| notices | List<Notice> | 是 | RequestBody参数 | 报警通知模板,参考:BCM通知模板接口 |
| noticeRawLogs | List<NoticeRawLog> | 否 | RequestBody参数 | 是否在报警通知中添加原始日志 |
返回状态码
成功返回200,失败返回见错误码
返回头域
除公共头域外,无其他特殊头域
返回参数
| 参数名称 | 类型 | 描述 |
|---|---|---|
| success | Boolean | 请求是否成功 |
| code | String | 请求码,成功为OK,错误为具体的错误码 |
请求示例
Plain Text
1POST /v1/alarm/policy HTTP/1.1
2Host: bls-log.bj.baidubce.com
3Authorization bce-auth-v1/5e5a8adf11ae475ba95f1bd38228b44f/2016-04-10T08:26:52Z/1800/host;x-bce-date/ec3c0069f9abb1e247773a62707224124b2b31b4c171133677f9042969791f02
4
5 {
6 // 报警策略名称,同user下唯一,必填
7 "name": "policy-name",
8
9 // 监控对象列表,选填,当所有日志集共享目标日志集时,填写该字段
10 "objects": [
11 {
12 "project": "default", // 日志集项目,默认
13 "logStoreName": "test-logstore-52" // 日志集名称
14 },
15 ],
16
17 // 执行语句列表,必填
18 "targets": [
19 {
20 // 执行语句,必填
21 "query": "select sum(age) as age",
22 // 查询开始时间偏移量,必填,取值范围: [-1440, 0)
23 "startTimeOffsetMinute": -1440,
24 // 查询结束时间偏移量,必填,取值范围: (startTimeOffsetMinute, 0]
25 "endTimeOffsetMinute": 0,
26
27 // 目标日志集,选填,当每个执行语句单独指定日志集时,填写该字段
28 "object": {
29 "logStoreName": "test-logstore-52" // 日志集名称
30 }
31 }
32 ],
33
34 // 触发条件列表,必填
35 "triggerConditions": [
36 {
37 // 报警等级,必填,可选项:
38 // INFO - 通知,
39 // WARN - 警告
40 // CRITICAL - 严重
41 "level": "WARN",
42
43 // 触发条件表达式,必填
44 "condition": "$1.age > 1"
45 }
46 ],
47
48 // 分组触发,选填
49 "groups": ["$1.age", "$1.salary"],
50
51 // 执行周期,必填,固定间隔和指定时刻有且仅有一个被设置
52 "schedule": {
53 // 固定间隔,单位:分钟,取值范围[1, 1440]
54 "intervalMinute": 1,
55
56 // 指定时刻,一天中的第几分钟,取值范围[0, 1440)
57 "fixTimeMinute": 120, // 示例中,120表示一天中的第120分钟,即凌晨2点整
58 // 固定时间频率; 0: 每天 1~7 一周的某天
59 "dayOfWeek": 0
60 },
61
62 // 连续触发阈值,连续多少次触发阈值则报警,必填
63 "pendingCount": 1,
64
65 // 重复报警间隔,单位:分钟,选填,默认值:0,表示关闭重复报警
66 "repeatIntervalMinute": 5,
67
68 // 恢复后是否通知 true:不通知, false:通知, 默认
69 "recoverWithoutNotice": true,
70
71 // 策略启用状态,可选项:
72 // ENABLED - 已启用
73 // DISABLED - 已禁用
74 "state": "ENABLED",
75
76 // 通知启用状态,可选项:
77 // ENABLED - 已启用
78 // DISABLED - 已禁用
79 "noticeState": "ENABLED",
80
81 // 报警通知模板列表,必填
82 "notices": [
83 {
84 // bcm报警模板id,必填
85 "id": "testNotice"
86 }
87 ],
88
89 // 是否在报警通知中添加原始日志,选填
90 "noticeRawLogs" : [
91 {
92 // 配置类型,必填
93 // REF - 关联执行语句
94 // CUSTOM - 自定义检索语句
95 "type" : "CUSTOM",
96
97 // 若type=REF,必填,表示引用的执行语句序号,从0开始计数
98 "refTarget" : 1,
99
100 // 若type=CUSTOM,填写自定义执行语句
101 "customTarget": {
102 // 执行语句,必填
103 "query": "select sum(age) as age",
104 // 查询开始时间偏移量,必填,取值范围: [-1440, 0)
105 "startTimeOffsetMinute": -1440,
106 // 查询结束时间偏移量,必填,取值范围: (startTimeOffsetMinute, 0]
107 "endTimeOffsetMinute": 0,
108
109 // 目标日志集,选填,当每个执行语句单独指定日志集时,填写该字段
110 "object": {
111 "logStoreName": "test-logstore-52" // 日志集名称
112 }
113 }
114
115 // 在原始日志中展示的字段名列表,选填,若未填写,表示展示所有字段
116 "columns": ["requestid", "status"],
117
118 // 展示的日志条数,最大值为5,必填
119 "limit" : 4,
120 }
121 ]
122}
响应示例
Plain Text
1HTTP/1.1 200 OK
2x-bce-request-id: 946002ee-cb4f-4aad-b686-5be55df27f09
3Date: Wed, 10 Apr 2016 08:26:52 GMT
4Transfer-Encoding: chunked
5Content-Type: application/json;charset=UTF-8
6Server: BWS
7
8{
9 "success": true,
10 "code": "OK"
11}
评价此篇文章
