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 panel
Usa la API de paneles para crear, actualizar, eliminar y trabajar con paneles en el espacio de trabajo de Grafana gestionado por Amazon.
El identificador (id) de un panel es un valor numérico que se incrementa automáticamente y solo es único por espacio de trabajo. El identificador único (uid) de un panel se puede utilizar para identificar de forma única un panel entre varios espacios de trabajo de Grafana gestionados por Amazon. Se genera automáticamente si no lo proporcionas al crear un panel. El uid permite disponer de URL coherentes para acceder a los paneles y sincronizarlos entre varios espacios de trabajo. El uso del uid significa que al cambiar el título de un panel no se interrumpe ningún enlace marcado a ese panel.
El uid puede tener una longitud máxima de 40 caracteres.
nota
Para usar una API de Grafana con tu espacio de trabajo de Grafana gestionado por Amazon, debes tener un token de API de Grafana válido. Lo incluyes en el Authorization
campo de la solicitud de API. Para obtener información sobre cómo crear un token para autenticar tus llamadas a la API, consultaAutenticarse con fichas.
Crear o actualizar el panel
POST /api/dashboards/db
Crea un panel nuevo o actualiza uno existente.
Ejemplo de solicitud para crear un panel nuevo
POST /api/dashboards/db HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk { "dashboard": { "id": null, "uid": null, "title": "Production Overview", "tags": [ "templated" ], "timezone": "browser", "schemaVersion": 16, "version": 0, "refresh": "25s" }, "folderId": 0, "folderUid": "l3KqBxCMz", "message": "Made changes to xyz", "overwrite": false }
Esquema corporal de JSON:
-
tablero: el modelo de tablero completo. Utilice null para crear un panel nuevo.
-
dashboard.id: utilice null para crear un panel nuevo.
-
dashboard.uid: identificador único opcional cuando lo usas para crear un panel nuevo. Si es nulo, se genera un nuevo uid.
-
folderid: el identificador de la carpeta en la que se va a guardar el panel.
-
foldeRUID: el UID de la carpeta en la que se guarda el panel. Anula el valor de
folderid
-
sobrescribir: especifique si
true
desea sobrescribir un panel existente con una versión más reciente, el mismo título del panel en la carpeta o el mismo uid del panel. -
mensaje: establece un mensaje de confirmación para el historial de versiones.
-
actualizar: establece el intervalo de actualización del panel. Si es inferior al intervalo de actualización mínimo, se ignora y se utiliza el intervalo de actualización mínimo.
Para añadir o actualizar una regla de alerta para un panel de mandos, declare un dashboard.panels.alert
bloqueo.
Ejemplo de solicitud para actualizar una regla de alerta del panel
HTTP/1.1 200 OK Content-Type: application/json; charset=UTF-8 Content-Length: 78 { "dashboard": { "id": 104, "panels": [ { "alert": { "alertRuleTags": {}, "conditions": [ { "evaluator": { "params": [ 25 ], "type": "gt" }, "operator": { "type": "and" }, "query": { "params": [ "A", "5m", "now" ] }, "reducer": { "params": [], "type": "avg" }, "type": "query" } ], "executionErrorState": "alerting", "for": "5m", "frequency": "1m", "handler": 1, "name": "Panel Title alert", "noDataState": "no_data", "notifications": [] }, "aliasColors": {}, "bars": false, "dashLength": 10, "dashes": false, "datasource": null, "fieldConfig": { "defaults": { "custom": {} }, "overrides": [] }, "fill": 1, "fillGradient": 0, "gridPos": { "h": 9, "w": 12, "x": 0, "y": 0 }, "hiddenSeries": false, "id": 2, "legend": { "avg": false, "current": false, "max": false, "min": false, "show": true, "total": false, "values": false }, "lines": true, "linewidth": 1, "nullPointMode": "null", "options": { "dataLinks": [] }, "percentage": false, "pointradius": 2, "points": false, "renderer": "flot", "seriesOverrides": [], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "refId": "A", "scenarioId": "random_walk" } ], "thresholds": [ { "colorMode": "critical", "fill": true, "line": true, "op": "gt", "value": 50 } ], "timeFrom": null, "timeRegions": [], "timeShift": null, "title": "Panel Title", "tooltip": { "shared": true, "sort": 0, "value_type": "individual" }, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": true, "values": [] }, "yaxes": [ { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true }, { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true } ], "yaxis": { "align": false, "alignLevel": null } } ], "title": "Update alert rule via API", "uid": "dHEquNzGz", "version": 1 } }
Ejemplo de respuesta
HTTP/1.1 200 OK Content-Type: application/json; charset=UTF-8 Content-Length: 78 { "id": 1, "uid": "cIBgcSjkk", "url": "/d/cIBgcSjkk/production-overview", "status": "success", "version": 1, "slug": "production-overview" //deprecated in Grafana v5.0 }
Códigos de estado:
-
200 — Creado
-
400 — Error como un JSON no válido, campos no válidos o faltantes
-
401 — No autorizado
-
403 — Acceso denegado
-
412 — Error en la condición previa
El código de estado 412 se usa para explicar por qué no se puede crear el panel.
-
Otra persona ha cambiado el panel
status=version-mismatch
-
Ya existe un panel con el mismo nombre en la carpeta
status=name-exists
-
Ya existe un panel con el mismo uid
status=name-exists
-
El panel de control pertenece al complemento
plugin title
status=plugin-dashboard
El cuerpo de la respuesta tiene las siguientes propiedades. Si otro panel tiene el mismo título, el status
valor esname-exists
.
HTTP/1.1 412 Precondition Failed Content-Type: application/json; charset=UTF-8 Content-Length: 97 { "message": "The dashboard has been changed by someone else", "status": "version-mismatch" }
Obtenga un panel por uid
GET /api/dashboards/uid/:uid
Devuelve el panel de control que coincide con el uid. Los metadatos devueltos pueden contener información sobre el UID de la carpeta que contiene el panel.
Ejemplo de solicitud
GET /api/dashboards/uid/cIBgcSjkk HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
Ejemplo de respuesta
HTTP/1.1 200 Content-Type: application/json { "dashboard": { "id": 1, "uid": "cIBgcSjkk", "title": "Production Overview", "tags": [ "templated" ], "timezone": "browser", "schemaVersion": 16, "version": 0 }, "meta": { "isStarred": false, "url": "/d/cIBgcSjkk/production-overview", "folderId": 2, "folderUid": "l3KqBxCMz", "slug": "production-overview" //deprecated in Grafana v5.0 } }
Códigos de estado:
-
200 — Encontrado
-
401 — No autorizado
-
403 — Acceso denegado
-
404 — No se ha encontrado
Eliminar el panel por uid
DELETE /api/dashboards/uid/:uid
Elimina el panel que coincide con el uid.
Ejemplo de solicitud
DELETE /api/dashboards/uid/cIBgcSjkk HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
Ejemplo de respuesta
HTTP/1.1 200 Content-Type: application/json { "title": "Production Overview", "message": "Dashboard Production Overview deleted", "id": 2 }
Códigos de estado:
-
200 — Eliminado
-
401 — No autorizado
-
403 — Acceso denegado
-
404 — No se ha encontrado
Obtiene el panel de control de inicio
GET /api/dashboards/home
Devuelve el panel de control de inicio.
Ejemplo de solicitud
GET /api/dashboards/home HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
Ejemplo de respuesta
HTTP/1.1 200 Content-Type: application/json { "dashboard": { "editable":false, "hideControls":true, "nav":[ { "enable":false, "type":"timepicker" } ], "style":"dark", "tags":[], "templating":{ "list":[ ] }, "time":{ }, "timezone":"browser", "title":"Home", "version":5 }, "meta": { "isHome":true, "canSave":false, "canEdit":false, "canStar":false, "url":"", "expires":"0001-01-01T00:00:00Z", "created":"0001-01-01T00:00:00Z" } }
Obtenga las etiquetas del panel de control
GET /api/dashboards/tags
Devuelve todas las etiquetas de los paneles.
Ejemplo de solicitud
GET /api/dashboards/tags HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
Ejemplo de respuesta
HTTP/1.1 200 Content-Type: application/json [ { "term":"tag1", "count":1 }, { "term":"tag2", "count":4 } ]