View a markdown version of this page

警示 API - Amazon Managed Grafana

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

警示 API

注意

本節僅適用於傳統提醒。如需詳細資訊,請參閱Grafana 提醒

使用偏好設定 API 取得傳統儀表板提醒及其狀態的相關資訊。不過,您無法使用此 API 來修改提醒。若要建立新的提醒或修改提醒,您需要更新包含提醒的儀表板 JSON。

注意

若要搭配 Amazon Managed Grafana 工作區使用 Grafana API,您必須擁有有效的服務帳戶字符。您可以在 API 請求的 Authorization 欄位中包含此項目。

取得提醒

GET /api/alerts

範例請求

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

Querystring 參數:

這些參數會用作 querystring 參數。例如:/api/alerts?dashboardId=1

  • dashboardId — 將回應限制為指定儀表板值中的提醒。您可以指定多個儀表板。例如 dashboardId=23&dashboardId=35

  • panelId— 限制回應以警示儀表板上指定的面板。

  • query - 將回應限制為具有類似此值之名稱的提醒。

  • 狀態 — 傳回具有下列一或多個警示狀態的警示:ALLalertingokpausedno_datapending。若要指定多個狀態,請使用下列格式: ?state=paused&state=alerting

  • limit — 將回應限制為提醒的 X 數量。

  • folderId — 將回應限制為指定資料夾中儀表板的提醒。您可以指定多個資料夾。例如 folderId=23&folderId=35

  • dashboardQuery — 將回應限制為具有類似此值之儀表板名稱的提醒。

  • dashboardTag — 限制具有指定標籤之儀表板的回應提醒。若要使用多個標籤執行「AND」篩選,請多次指定標籤參數。例如 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" }