Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
API d'annotations
Utilisez l'API d'annotations pour créer, mettre à jour, supprimer et utiliser des annotations dans l'espace de travail Amazon Managed Grafana.
Les annotations sont enregistrées dans la base de données Grafana de l'espace de travail (sqlite, mysql ou postgres). Les annotations peuvent être des annotations globales qui peuvent être affichées sur n'importe quel tableau de bord en configurant une source de données d'annotation. Les annotations sont filtrées par balises. Ils peuvent également être liés à un panneau d'un tableau de bord et affichés uniquement sur ce panneau.
Note
Pour utiliser une API Grafana avec votre espace de travail Amazon Managed Grafana, vous devez disposer d'un jeton d'API Grafana valide. Vous l'incluez dans le Authorization
champ de la demande d'API. Pour plus d'informations sur la création d'un jeton pour authentifier vos appels d'API, consultezAuthentifiez-vous avec des jetons.
Rechercher des annotations
GET /api/annotations?from=1506676478816&to=1507281278816&tags=tag1&tags=tag2&limit=100
Exemple de demande
GET /api/annotations?from=1506676478816&to=1507281278816&tags=tag1&tags=tag2&limit=100 HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
Paramètres de requête :
-
from — (Facultatif) Epoch date/heure en millisecondes.
-
to — (Facultatif) Date et heure de l'époque en millisecondes.
-
limit — (Facultatif) Nombre maximum de résultats renvoyés. La valeur par défaut est 100.
-
alertid — (Facultatif) Trouvez des annotations pour l'alerte spécifiée.
-
DashboardID — (Facultatif) Trouvez les annotations dont le champ d'application est limité au tableau de bord spécifié.
-
PanelID — (Facultatif) Trouvez les annotations dont la portée est limitée au panneau spécifié.
-
UserId — (Facultatif) Recherche les annotations créées par l'utilisateur spécifié.
-
type — (Facultatif) Spécifiez pour renvoyer les alertes ou les annotations créées par l'utilisateur. Les valeurs de valeur sont
alert
etannotation
. -
tags — (Facultatif) Utilisez-le pour filtrer les annotations globales. Les annotations globales sont des annotations provenant d'une source de données d'annotation qui ne sont pas connectées spécifiquement à un tableau de bord ou à un panneau. Pour effectuer un filtrage « ET » avec plusieurs balises, spécifiez le paramètre des balises plusieurs fois. Par exemple,
tags=tag1&tags=tag2
. Ce sont des tags Grafana, pas AWS des tags.
Exemple de réponse
HTTP/1.1 200 Content-Type: application/json [ { "id": 1124, "alertId": 0, "dashboardId": 468, "panelId": 2, "userId": 1, "userName": "", "newState": "", "prevState": "", "time": 1507266395000, "timeEnd": 1507266395000, "text": "test", "metric": "", "tags": [ "tag1", "tag2" ], "data": {} }, { "id": 1123, "alertId": 0, "dashboardId": 468, "panelId": 2, "userId": 1, "userName": "", "newState": "", "prevState": "", "time": 1507265111000, "text": "test", "metric": "", "tags": [ "tag1", "tag2" ], "data": {} } ]
Création d'une annotation
POST /api/annotations
Crée une annotation dans la base de données Grafana de l'espace de travail. Les champs dashboardId
et panelId
sont facultatifs. Si elles ne sont pas spécifiées, une annotation globale est créée et peut être interrogée dans n'importe quel tableau de bord qui ajoute la source de données des annotations Grafana. Lorsque vous créez une annotation de région, veillez à inclure la timeEnd
propriété.
Le format pour time
et timeEnd
doit être celui des numéros d'époque en résolution en millisecondes.
Exemple de demande
POST /api/annotations HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk { "dashboardId":468, "panelId":1, "time":1507037197339, "timeEnd":1507180805056, "tags":["tag1","tag2"], "text":"Annotation Description" }
Exemple de réponse
HTTP/1.1 200 Content-Type: application/json { "message":"Annotation added", "id": 1, }
Création d'annotations au format graphite
POST /api/annotations/graphite
Crée une annotation en utilisant un format d'événement compatible avec Graphite. Les champs when
et data
sont facultatifs. Si elle n'when
est pas spécifiée, l'heure actuelle est utilisée comme horodatage de l'annotation. Le tags
champ peut également être au format Graphite 0.10.0 (chaîne avec plusieurs balises séparées par un espace).
Exemple de demande
POST /api/annotations/graphite HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk { "what": "Event - deploy", "tags": ["deploy", "production"], "when": 1467844481, "data": "deploy of master branch happened at Wed Jul 6 22:34:41 UTC 2016" }
Exemple de réponse
HTTP/1.1 200 Content-Type: application/json { "message":"Graphite annotation added", "id": 1 }
Mettre à jour l'annotation
PUT /api/annotations/:id
met à jour toutes les propriétés d'une annotation correspondant à l'identifiant spécifié. Pour mettre à jour certaines propriétés uniquement, utilisez l'opération Patch Annotation.
Exemple de demande
PUT /api/annotations/1141 HTTP/1.1 Accept: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk Content-Type: application/json { "time":1507037197339, "timeEnd":1507180805056, "text":"Annotation Description", "tags":["tag3","tag4","tag5"] }
Exemple de réponse :
HTTP/1.1 200 Content-Type: application/json { "message":"Annotation updated" }
Annotation des correctifs
PATCH /api/annotations/:id
Met à jour une ou plusieurs propriétés d'une annotation correspondant à l'identifiant spécifié. Cette opération prend actuellement en charge la mise à jour des timeEnd
propriétés text
tags
time
,, et.
Exemple de demande :
PATCH /api/annotations/1145 HTTP/1.1 Accept: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk Content-Type: application/json { "text":"New Annotation Description", "tags":["tag6","tag7","tag8"] }
Exemple de réponse
HTTP/1.1 200 Content-Type: application/json { "message":"Annotation patched" }
Supprimer une annotation par identifiant
DELETE /api/annotations/:id
Supprime l'annotation correspondant à l'ID spécifié.
Exemple de demande
DELETE /api/annotations/1 HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
Exemple de réponse
HTTP/1.1 200 Content-Type: application/json { "message":"Annotation deleted" }