获取报警策略列表ListAlarmPolicy
更新时间:2025-09-04
描述
获取报警策略列表
请求
- 请求语法
Text
1POST /v1/alarm/policy/list HTTP/1.1
2Host: <Endpoint>
3Authorization: <Authorization String>
4Content-Type: application/json; charset=utf-8
5{
6 "policyNamePattern": "policy-name"
7}
- 请求头域
除公共请求头域外,无其它特殊头域。
- 请求参数
参数名称 | 类型 | 是否必须 | 参数位置 | 描述 |
---|---|---|---|---|
policyNamePattern | String | No | RequestBody | 按策略名称过滤 |
policyIdPattern | String | No | RequestBody | 按策略ID过滤 |
logStoreNamePattern | String | No | RequestBody | 按日志集过滤 |
state | String | No | RequestBody | 按策略状态过滤, 取值:ENABLE, DISABLED |
noticeState | String | No | RequestBody | 按通知状态过滤,取值:ENABLE, DISABLED |
orderBy | String | No | RequestBody | 排序字段,createdTime: 创建时间, updatedTime: 更新时间,默认值:updatedTime |
order | String | No | RequestBody | 排序方式,asc: 升序, desc: 降序,默认值:desc |
pageNo | Int | Yes | RequestBody | 第几页,从1开始计数 |
pageSize | Int | Yes | RequestBody | 每页展示数量,最大值:100 |
响应
- 响应头域
除公共响应头域外,无其它特殊头域。
- 响应参数
字段 | 类型 | 描述 |
---|---|---|
success | Boolean | 请求是否成功 |
code | String | 请求码,成功为OK,错误为具体的错误码 |
message | String | 请求成功为空,失败为具体的错误信息 |
result | Result | 报警策略详情 |
Result对象的元素结构如下:
字段 | 类型 | 描述 |
---|---|---|
policies | List<Policy> | 报警策略列表 |
pageNo | Int | 第几页 |
pageSize | Int | 每页展示数量 |
totalCount | Int | 总数 |
Policy对象的元素结构如下:
字段 | 类型 | 描述 |
---|---|---|
id | String | 报警策略ID,唯一 |
name | String | 报警策略名称,不能重复 |
objects | List<LogStore> | 监控对象列表,当所有日志集共享目标日志集时,填写该字段 |
targets | List<Target> | 执行语句列表 |
triggerConditions | List<TriggerCondition> | 触发条件列表 |
groups | List<String> | 分组触发 |
schedule | Schedule | 执行周期 |
pendingCount | Int | 连续触发阈值,连续多少次触发阈值则报警 |
repeatIntervalMinute | Int | 重复报警间隔,单位:分钟,默认值:0,表示关闭重复报警 |
recoverWithoutNotice | Bool | 恢复后是否通知 true:不通知, false:通知, 默认值为false |
state | String | 策略启用状态,ENABLED: 已启用, DISABLED: 已禁用 |
noticeState | String | 下通知启用状态,ENABLED: 已启用, DISABLED: 已禁用 |
notices | List<Notice> | 报警通知模板,参考:BCM通知模板接口 |
noticeRawLogs | List<NoticeRawLog> | 是否在报警通知中添加原始日志 |
其中,objects数组中的每个LogStore元素结果如下:
字段 | 类型 | 描述 |
---|---|---|
project | String | 日志集项目,默认default |
logStoreName | String | 日志集名称 |
targets数组中的每个Target元素结构如下:
参数名称 | 类型 | 描述 |
---|---|---|
query | String | 执行语句 |
startTimeOffsetMinute | Int | 查询开始时间偏移量,取值范围: [-1440, 0) |
endTimeOffsetMinute | Int | 取值范围: (startTimeOffsetMinute, 0] |
object | LogStore | 当每个执行语句单独指定日志集时,填写该字段 |
triggerConditions数组中的每个TriggerCondition元素结构如下:
参数名称 | 类型 | 描述 |
---|---|---|
level | String | 报警等级,必填,可选项:INFO, WARN, CRITICAL |
condition | String | 触发条件表达式 |
Schedule元素结构如下:
参数名称 | 类型 | 描述 |
---|---|---|
intervalMinute | Int | 固定间隔,单位:分钟,取值范围[1, 1440] |
fixTimeMinute | Int | 指定时刻,一天中的第几分钟,取值范围[0, 1440) |
dayOfWeek | Int | 固定时间频率; 0: 每天,1~7 一周的某天 |
Notice元素结构如下:
参数名称 | 类型 | 描述 |
---|---|---|
id | String | bcm报警模板id |
NoticeRawLog元素结构如下:
参数名称 | 类型 | 描述 |
---|---|---|
type | String | 配置类型, REF: 关联执行语句, CUSTOM: 自定义检索语句 |
refTarget | String | 若type=REF,表示引用的执行语句序号,从0开始计数 |
customTarget | Target | 若type=CUSTOM,填写自定义执行语句 |
columns | List<String> | 在原始日志中展示的字段名列表,若未填写,表示展示所有字段 |
limit | Int | 展示的日志条数,最大值为5 |
错误码
除了通用的错误码,无其他特殊错误码返回。
示例
- 请求示例
Text
1POST /v1/alarm/policy/list HTTP/1.1
2Host: bls-log.bj.baidubce.com
3Authorization:bce-auth-v1/18717522d39411e9b721df098b0b908c/2019-09-10T07:00:20Z/1800/content-type;host;x-bce-date;x-bce-request-id/6a7cb6c9ac7ec156c805e55e7d0bcfc443b47feee97cf099c1c0d93a0b4c8304
4Content-Type: application/json; charset=utf-8
5{
6 "pageNo": 1,
7 "pageSize": 10
8}
- 响应示例
Text
1HTTP/1.1 201
2Content-Type: application/json; charset=utf-8
3X-Bce-Request-Id: 2eeba101-4cc7-4cfe-b5ac-a3be8d060e33
4Date: Fri, 10 Apr 2020 04:42:37 GMT
5{
6 "success": true,
7 "code": "OK", // 错误码
8 "message": "", // 错误详情
9 "result": {
10 "pageNo": 1, // 第几页
11 "pageSize": 10, // 每页展示数量
12 "totalCount": 100, // 总数
13 "policies": {
14 // 报警策略名称,同user下唯一
15 "name": "policy-name",
16
17 // 策略ID,同user下唯一
18 "id": "p-nRyKJOpr",
19
20 // 策略启用状态,可选项:
21 // ENABLED - 已启用
22 // DISABLED - 已禁用
23 "state": "ENABLED",
24
25 // 通知启用状态,可选项:
26 // ENABLED - 已启用
27 // DISABLED - 已禁用
28 "noticeState": "ENABLED",
29
30 // 通知启用状态,可选项
31 // ENABLED - 已启用
32 // DISABLED - 已禁用
33 "noticeState": "ENABLED",
34
35 "createdTime": "20240410T10:12:30Z", // 创建时间,UTC时间
36 "updatedTime": "20240410T10:12:30Z", // 更新时间,UTC时间
37
38 // 监控对象列表,当所有日志集共享目标日志集时,该字段被填充
39 "objects": [
40 {
41 "logStoreName": "test-logstore-52" // 日志集名称
42 },
43 ],
44
45 // 执行语句列表
46 "targets": [
47 {
48 // 执行语句
49 "query": "select sum(age) as age",
50 // 查询开始时间偏移量,必填,取值范围: [-1440, 0)
51 "startTimeOffsetMinute": -1440,
52 // 查询结束时间偏移量,必填,取值范围: (startTimeOffsetMinute, 0]
53 "endTimeOffsetMinute": 0,
54
55 // 目标日志集,当每个执行语句单独指定日志集时,该字段被填充
56 "object": {
57 "logStoreName": "test-logstore-52" // 日志集名称
58 }
59 }
60 ],
61
62 // 触发条件列表
63 "triggerConditions": [
64 {
65 // 报警等级,可选项:
66 // INFO - 通知,
67 // WARN - 警告
68 // CRITICAL - 严重
69 "level": "WARN",
70
71 // 触发条件表达式
72 "condition": "$1.age > 1"
73 }
74 ],
75
76 // 分组触发
77 "groups": ["$1.age", "$1.salary"],
78
79 // 执行周期,固定间隔和指定时刻有且仅有一个被设置
80 "schedule": {
81 // 固定间隔,单位:分钟,取值范围[1, 1440]
82 "intervalMinute": 1,
83
84 // 指定时刻,一天中的第几分钟,取值范围[0, 1440)
85 "fixTimeMinute": 120, // 示例中,120表示一天中的第120分钟,即凌晨2点整
86
87 // 固定时间频率; 0: 每天 1~7 一周的周一到周日
88 "dayOfWeek": 3,
89 },
90
91 // 连续触发阈值,连续多少次触发阈值则报警
92 "pendingCount": 1,
93
94 // 重复报警间隔,单位:分钟,默认值:0,表示关闭重复报警
95 "repeatIntervalMinute": 5,
96
97 // 恢复后是否通知 true:通知, false:不通知, 默认
98 "recoverAlarmNotice": true,
99
100 // 报警通知模板列表
101 "notices": [
102 {
103 // bcm报警模板id
104 "id": "testNotice"
105 }
106 ],
107
108 // 报警内容是否增加日志原文 false:不增加,默认 true:增加
109 "noticeWithRawLog" : true,
110
111 // 报警通知内容配置
112 "noticeRawConfigs" : [
113 {
114 // 配置类型,必填
115 // REF 自动关联执行语句
116 // CUSTOM 自定义检索语句
117 "type" : "CUSTOM",
118
119 // 若type为REF,表示执行语句序号
120 "refTarget" : 1,
121
122 // 若type为AUTO_ASSOCIATED,表示自定义检索语句
123 "query" : "match *",
124
125 // 如果每个执行语句单独选择日志集,且配置为自定义检索语句,这里表示日志集
126 "object" : {
127 // 日志集项目,必填
128 "project" : "default",
129 // 日志集名,必填
130 "logStoreName" : "bls-ng-log"
131 },
132 // 显示字段,必填写
133 // All - 所有字段
134 // SpecifiedFields - 指定字段
135 "displayType" : "ALL",
136
137 // 指定字段名列表,选填
138 "display_fields" : ["requestid", "status"],
139 // 表示展示的日志条数,最大值为5
140 "limit" : 4,
141 }
142 ]
143 }
144 }
145}