Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
API de anotaciones
Use la API de anotaciones para crear, actualizar y eliminar anotaciones, y trabajar con ellas, en el espacio de trabajo de Amazon Managed Grafana.
Las anotaciones se guardan en la base de datos de Grafana del espacio de trabajo (sqlite, mysql o postgres). Las anotaciones pueden ser anotaciones globales que se pueden mostrar en cualquier panel configurando un origen de datos de anotaciones. Las anotaciones se filtran por etiquetas. También se pueden vincular a un panel de otro panel y mostrarse solo en ese panel.
nota
Para usar una API de Grafana con su espacio de trabajo de Amazon Managed Grafana, debe tener un token de API de Grafana que sea válido. Lo incluye en el campo Authorization
de la solicitud de API. Para obtener información sobre cómo crear un token para autenticar sus llamadas a la API, consulte Autenticación con tokens.
Búsqueda de anotaciones
GET /api/annotations?from=1506676478816&to=1507281278816&tags=tag1&tags=tag2&limit=100
Ejemplo de solicitud
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
Parámetros de consulta:
-
from: (opcional) fecha y hora de la época en milisegundos.
-
to: (opcional) fecha y hora de la época en milisegundos.
-
limit: (opcional) número máximo de resultados devueltos. El valor predeterminado es 100.
-
alertid: (opcional) busque las anotaciones de la alerta especificada.
-
dashboardId: (opcional) busque las anotaciones limitadas al panel especificado.
-
panelId: (opcional) busque las anotaciones limitadas al panel especificado.
-
userId: (opcional) busque las anotaciones creadas por el usuario especificado.
-
type: (opcional) especifique si desea devolver las alertas o las anotaciones creadas por el usuario. Los valores son
alert
yannotation
. -
tags: (opcional) utilice esta opción para filtrar las anotaciones globales. Las anotaciones globales son anotaciones de un origen de datos de anotaciones que no están conectadas específicamente a ningún panel. Para hacer un filtrado “AND” con varias etiquetas, especifique el parámetro de etiquetas varias veces. Por ejemplo,
tags=tag1&tags=tag2
. Son etiquetas de Grafana, no etiquetas de AWS.
Ejemplo de respuesta
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": {} } ]
Creación de una anotación
POST /api/annotations
Crea una anotación en la base de datos de Grafana del espacio de trabajo. Los campos dashboardId
y panelId
son opcionales. Si no se especifican, se crea una anotación global que se puede consultar en cualquier panel que agregue el origen de datos de anotaciones de Grafana. Al crear una anotación de región, asegúrese de incluir la propiedad timeEnd
.
El formato para time
y timeEnd
debe ser números de época con una resolución de milisegundos.
Ejemplo de solicitud
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" }
Ejemplo de respuesta
HTTP/1.1 200 Content-Type: application/json { "message":"Annotation added", "id": 1, }
Creación de una anotación en formato de Graphite
POST /api/annotations/graphite
Crea una anotación mediante un formato de evento compatible con Graphite. Los campos when
y data
son opcionales. Si no se especifica when
, la hora actual se utiliza como marca de tiempo de la anotación. El campo tags
también puede tener un formato anterior al de Graphite 0.10.0 (cadena con varias etiquetas separadas por un espacio).
Ejemplo de solicitud
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" }
Ejemplo de respuesta
HTTP/1.1 200 Content-Type: application/json { "message":"Graphite annotation added", "id": 1 }
Actualización de una anotación
PUT /api/annotations/:id
Actualice todas las propiedades de una anotación que coincida con el ID especificado. Para actualizar solo determinadas propiedades, utilice la operación de anotación de revisiones.
Ejemplo de solicitud
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"] }
Ejemplo de respuesta:
HTTP/1.1 200 Content-Type: application/json { "message":"Annotation updated" }
Anotación de revisiones
PATCH /api/annotations/:id
Actualice una o más propiedades de una anotación que coincida con el ID especificado. Actualmente, esta operación permite actualizar las propiedades text
, tags
, time
y timeEnd
.
Ejemplo de solicitud:
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"] }
Ejemplo de respuesta
HTTP/1.1 200 Content-Type: application/json { "message":"Annotation patched" }
Eliminación de una anotación por ID
DELETE /api/annotations/:id
Elimina la anotación que coincide con el ID especificado.
Ejemplo de solicitud
DELETE /api/annotations/1 HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
Ejemplo de respuesta
HTTP/1.1 200 Content-Type: application/json { "message":"Annotation deleted" }