异步告警 API
最后更新于:
该API支持在后台运行告警搜索请求。借助此功能,您可实时监控请求进度,并在结果生成时即时查看。
执行异步告警查询的步骤如下:
- 您可通过提供一组必需的元数据和异步参数发起请求。
- 服务器将返回请求ID,并在后台线程中执行搜索操作。
- 您可通过Jobs接口查询请求状态。
- 任务完成后,可通过 jobs/results 接口获取结果。
- 搜索结果将在EventLog Analyzer中保留24小时,之后将由清理线程删除。
| 同步告警 | 异步告警 |
|---|---|
| 在保留期内检索数据。 响应时间取决于数据获取量。 |
根据给定条件检索大量数据。 响应将返回请求ID,搜索在后台线程中执行 |
| 获取下一组结果时,请使用下一个游标继续请求。 | 任务完成后,需通过任务结果接口使用下一页页码进行搜索以获取后续结果页。 |
| 响应仅在5分钟内有效。 | 响应有效期最长为24小时。 |
请求网址
请求头
| Header name | 值 | 必填 | 描述 |
|---|---|---|---|
| 授权 | 持有人 {{AuthToken}} | 是 | 从API设置页面生成的AuthToken。
例如: |
请求参数
请求需以 JSON 格式填充在请求主体中,并包含以下键值参数:
| 参数名称 | 默认值 | 必填 | 类型 | 描述 |
|---|---|---|---|---|
| 查询 | * | 否 | 字符串 | 列表起始值 |
| alert_profiles | 全部 | 否 | JSONArray | 告警配置文件列表 |
| 严重性 | 全部 | 否 | JSONArray | 严重性列表 |
| 状态 | 全部 | 否 | JSONArray | 状态列表 |
| 来自 | 当前时间 - 24 小时 | 否 | 长 | Unix 毫秒制搜索起始时间 |
| 至 | 当前时间 | 否 | 长 | 搜索结束时间(以Unix毫秒为单位) |
- 查询字符串中的引号(即 " ")需进行转义。例如:若EventLog Analyzer搜索页面的查询为REMOTE_INTERFACE = "switch 1",则Rest Api中的查询参数应写为"REMOTE_INTERFACE = \"switch 1\""
响应
响应将以JSON对象形式返回,包含以下键值对
| 参数名称 | 描述 |
|---|---|
| hits | 包含请求搜索结果的JSON对象
包含以下字段 |
cURL使用示例
i) 带查询条件的搜索请求
请求示例
curl --location --request POST 'http://localhost:8095/RestAPI/v1/alerts/async' \ -H "Accept: application/json" -H "Authorization: Bearer mdrkoda0odmtmznloc00ndziltg0mgutmwzkztljmjvmzwmx " --data-raw '{ "query": "EVENTID = 16384 AND USERNAME = mhtoc", "alert_profiles": [1, 2, 601], "severity": ["CRITICAL"], "status": ["OPEN"], "from": 1643480792000, "to": 1643480479500 }'
示例响应:
{ "message": "请求已提交", "request_id": "AX6qKwX7hJby8kAkaqDG", "status": 200 }
使用Postman(第三方工具)的示例用法