获取报警历史列表ListAlarmRecord
更新时间:2025-09-04
描述
获取报警历史列表
请求
- 请求语法
Text
1POST /v1/alarm/record/list HTTP/1.1
2Host: <Endpoint>
3Authorization: <Authorization String>
4Content-Type: application/json; charset=utf-8
5{
6 "policyNamePattern": "<policyNamePattern>"
7}
- 请求头域
除公共请求头域外,无其它特殊头域。
- 请求参数
参数名称 | 类型 | 是否必须 | 参数位置 | 描述 |
---|---|---|---|---|
policyNamePattern | String | No | RequestBody | 按策略名称过滤 |
policyIdPattern | String | No | RequestBody | 按策略ID过滤 |
logStoreNamePattern | String | No | RequestBody | 按日志集过滤 |
level | String | No | RequestBody | 按报警等级过滤, 取值:INFO, WARN, CRITICAL |
state | String | No | RequestBody | 按报警状态过滤,取值:OK: 已恢复, ALERT: 报警中, CLOSED: 已关闭 |
startDateTime | String | No | RequestBody | 查询开始时间,UTC时间,默认值:30天前 |
endDateTime | String | No | RequestBody | 查询结束时间,UTC时间,默认值:当前时间 |
orderBy | String | No | RequestBody | 排序字段,startTime: 报警开始时间, endTime: 报警结束时间,默认值:startTime |
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对象的元素结构如下:
字段 | 类型 | 描述 |
---|---|---|
alarms | List<Alarm> | 报警策略列表 |
pageNo | Int | 第几页 |
pageSize | Int | 每页展示数量 |
totalCount | Int | 总数 |
Alarm对象的元素结构如下:
字段 | 类型 | 描述 |
---|---|---|
id | String | 报警ID |
groupId | String | 分组ID |
startTime | String | 报警开始时间,UTC时间 |
endTime | String | 报警关闭时间,UTC时间,若报警未关闭,该值为空字符串 |
state | String | 报警状态,取值:OK: 已恢复, ALERT: 报警中, CLOSED: 已关闭 |
closeReason | List<String> | 报警关闭原因, POLICY_MODIFIED: 报警策略更新 |
policy | Policy | 报警策略详情 |
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 | 报警模板id |
name | String | 报警模板名称 |
members | List<String> | 报警模板用户列表 |
methods | List<String> | 报警模板通知方式,取值:EMAIL: 邮件,SMS: 短信, PHONE: 电话 |
callbacks | List<String> | 报警模板回调地址 |
NoticeRawLog元素结构如下:
参数名称 | 类型 | 描述 |
---|---|---|
type | String | 配置类型, REF: 关联执行语句, CUSTOM: 自定义检索语句 |
refTarget | String | 若type=REF,表示引用的执行语句序号,从0开始计数 |
customTarget | Target | 若type=CUSTOM,填写自定义执行语句 |
columns | List<String> | 在原始日志中展示的字段名列表,若未填写,表示展示所有字段 |
limit | Int | 展示的日志条数,最大值为5 |
错误码
除了通用的错误码,无其他特殊错误码返回。
示例
- 请求示例
Text
1POST /v1/alarm/record/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 "msg": "", // 若失败,返回失败原因
8 "result": {
9 // 报警列表
10 "alarms": [
11 {
12 "id": "a-8aab556f3f7b", //报警ID
13 "groupId": "Y4gLRiPS", // 分组ID
14 "startTime": "2024-04-10T10:12:30Z", // 报警开始时间,UTC时间
15 "endTime": "2024-04-10T11:21:31Z", // 报警关闭时间,UTC时间,若报警未关闭,该值为空字符串
16
17 // 报警状态,可选项:
18 // OK - 已恢复
19 // ALERT - 报警中
20 // CLOSED - 已关闭
21 "state": "ALERT",
22
23 // 报警关闭原因,可选项:
24 // POLICY_MODIFIED - 报警策略更新
25 "closeReason": "POLICY_MODIFIED",
26
27 // 关联的报警策略
28 "policy": {
29 "name": "policy-name", // 策略名称
30 // 执行语句列表
31 "targets": [
32 {
33 // 执行语句
34 "query": "select sum(age) as age",
35 // 查询开始时间偏移量,取值范围: [-1440, 0)
36 "startTimeOffsetMinute": -1440,
37 // 查询结束时间偏移量,取值范围: (startTimeOffsetMinute, 0]
38 "endTimeOffsetMinute": 0,
39
40 // 目标日志集,若每个执行语句单独指定日志集,填写该字段
41 "object": {
42 "logStoreName": "test-logstore-52" // 日志集名称
43 }
44 }
45 ],
46 },
47
48 // 关联的触发条件
49 "triggerCondition": {
50 // 报警等级,可选项:
51 // INFO - 通知,
52 // WARN - 警告
53 // CRITICAL - 严重
54 "level": "WARN",
55
56 // 触发条件表达式
57 "condition": "$1.age > 1"
58 },
59
60 // 目标日志集,若执行语句共享目标日志集,该字段填写当前报警关联的目标日志集
61 "object": {
62 "logStoreName": "log-store-test", // 日志集名称
63 },
64 // 分组结果
65 "groups": [
66 {"key": "$1.prov", "value": "bj"},
67 ],
68
69 // 上一次通知时间,UTC时间,若未发生通知,则改字段为空字符串
70 "lastNoticeTime": "2024-04-10T11:21:31Z",
71
72 // 触发报警时的通知详情
73 "notices": [
74 {
75 "id": "dfa4298f-75e2-4e17-89f6-d41ea98ea196", // 模板id
76 "name": "默认通知", // 模板名称
77 "members": ["testUsername"], // 用户列表
78 // 通知方式,可选项:
79 // EMAIL - 邮件
80 // SMS - 短信
81 // PHONE - 电话
82 "methods": ["EMAIL", "SMS", "PHONE"],
83 "callbacks": ["http://callback"], // 回调地址
84 }
85 ],
86 }
87 ],
88 "pageNo": 1, // 第几页
89 "pageSize": 10, // 每页展示数量
90 "totalCount": 100, // 总数
91 }
92}