提醒 API - Amazon Managed Grafana

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

提醒 API

注意

本节仅适用于经典警报。有关更多信息,请参阅 Grafana 警报

使用偏好设置 API 获取有关经典仪表板警报及其状态的信息。但是,您不能使用此 API 修改提醒。要创建新警报或修改警报,您需要更新包含警报的仪表板 JSON。

注意

要在亚马逊托管 Grafana 工作空间中使用 Grafana API,您必须拥有有效的 Grafana API 令牌。您可以将其包含在 API 请求的Authorization字段中。有关如何创建令牌来验证您的 API 调用的信息,请参阅使用令牌进行身份验证

获取警报

GET /api/alerts

示例请求

GET /api/alerts HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk

查询字符串参数:

这些参数用作查询字符串参数。例如:/api/alerts?dashboardId=1

  • DashboarD id — 限制对指定仪表板值中的警报的响应。您可以指定多个仪表板。例如,dashboardId=23&dashboardId=35

  • P@@ anelID-将响应限制为仪表板上指定面板的警报。

  • query-将响应限制为名称类似于此值的警报。

  • state-返回具有以下一种或多种警报@@ 状态的警报:ALLalertingokno_datapaused、或pending。要指定多个状态,请使用以下格式:?state=paused&state=alerting

  • 限制-将响应限制为 X 个警报。

  • folderId-限制对指定文件夹中仪表板警报的响应。您可以指定多个文件夹。例如,folderId=23&folderId=35

  • DashboardQuery — 限制对仪表板名称类似于此值的警报的响应。

  • DashboardTag-限制带有指定标签的仪表板的响应警报。要对多个标签进行 “AND” 筛选,请多次指定 tags 参数。例如,dashboardTag=tag1&dashboardTag=tag2。请注意,这些是 Grafana 标签,而不是标签。 AWS

响应示例

HTTP/1.1 200 Content-Type: application/json [ { "id": 1, "dashboardId": 1, "dashboardUId": "ABcdEFghij" "dashboardSlug": "sensors", "panelId": 1, "name": "fire place sensor", "state": "alerting", "newStateDate": "2018-05-14T05:55:20+02:00", "evalDate": "0001-01-01T00:00:00Z", "evalData": null, "executionError": "", "url": "http://grafana.com/dashboard/db/sensors" } ]

按 ID 获取警报

GET /api/alerts/:id

示例请求

GET /api/alerts/1 HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk

响应示例

HTTP/1.1 200 Content-Type: application/json { "id": 1, "dashboardId": 1, "dashboardUId": "ABcdEFghij" "dashboardSlug": "sensors", "panelId": 1, "name": "fire place sensor", "state": "alerting", "message": "Someone is trying to break in through the fire place", "newStateDate": "2018-05-14T05:55:20+02:00", "evalDate": "0001-01-01T00:00:00Z", "evalData": "evalMatches": [ { "metric": "movement", "tags": { "name": "fireplace_chimney" }, "value": 98.765 } ], "executionError": "", "url": "http://grafana.com/dashboard/db/sensors" }
重要

evalMatches当且仅当警报状态发生变化时,数据才会缓存在数据库中。如果来自一台服务器的数据首先触发警报,而在看到该服务器离开警报状态之前,另一台服务器也进入了触发警报的状态,则第二台服务器在evalMatches数据中不可见。

按 ID 暂停警报

POST /api/alerts/:id/pause

示例请求

POST /api/alerts/1/pause HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk { "paused": true }

:id查询参数是要暂停或取消暂停的警报的 ID。 paused可以是true暂停警报或false取消暂停警报。

响应示例

HTTP/1.1 200 Content-Type: application/json { "alertId": 1, "state": "Paused", "message": "alert paused" }