Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
API del pannello di controllo
Usa l'API Dashboard per creare, aggiornare, eliminare e lavorare con i dashboard nell'area di lavoro di Amazon Managed Grafana.
L'identificatore (id) di una dashboard è un valore numerico ad incremento automatico ed è unico solo per area di lavoro. L'identificatore univoco (uid) di una dashboard può essere utilizzato per identificare in modo univoco una dashboard tra più aree di lavoro Amazon Managed Grafana. Viene generato automaticamente se non ne fornisci uno quando crei una dashboard. L'uid consente di avere URL coerenti per l'accesso alle dashboard e per la sincronizzazione delle dashboard tra più aree di lavoro. L'uso dell'uid significa che la modifica del titolo di una dashboard non interrompe i collegamenti aggiunti ai segnalibri a quella dashboard.
L'uid può avere una lunghezza massima di 40 caratteri.
Nota
Per utilizzare un'API Grafana con il tuo spazio di lavoro Amazon Managed Grafana, devi disporre di un token API Grafana valido. Lo includi nel Authorization
campo della richiesta API. Per informazioni su come creare un token per autenticare le chiamate API, consultaAutenticazione con token.
Crea/aggiorna il pannello di controllo
POST /api/dashboards/db
Crea una nuova dashboard o aggiorna una dashboard esistente.
Esempio di richiesta per creare una nuova dashboard
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 }
Schema del corpo JSON:
-
dashboard: il modello di dashboard completo. Usa null per creare una nuova dashboard.
-
dashboard.id: utilizza null per creare una nuova dashboard.
-
dashboard.uid — Identificatore univoco opzionale quando lo usi per creare una nuova dashboard. Se null, viene generato un nuovo uid.
-
folderid — L'id della cartella in cui salvare la dashboard.
-
folderUID — L'Uid della cartella in cui salvare la dashboard. Sostituisce il valore di
folderid
-
sovrascrivi: specifica
true
di sovrascrivere una dashboard esistente con una versione più recente, lo stesso titolo della dashboard nella cartella o lo stesso uid della dashboard. -
messaggio: imposta un messaggio di commit per la cronologia delle versioni.
-
refresh: imposta l'intervallo di aggiornamento della dashboard. Se è inferiore all'intervallo di aggiornamento minimo, viene ignorato e viene utilizzato l'intervallo di aggiornamento minimo.
Per aggiungere o aggiornare una regola di avviso per un pannello del dashboard, dichiara un blocco. dashboard.panels.alert
Esempio di richiesta di aggiornamento di una regola di avviso del dashboard
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 } }
Example response
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 }
Codici di stato:
-
200 — Creato
-
400 — Errore come JSON non valido, campi non validi o mancanti
-
401 — Non autorizzato
-
403 — Accesso negato
-
412 — Precondizione non riuscita
Il codice di stato 412 viene utilizzato per spiegare perché la dashboard non può essere creata.
-
La dashboard è stata modificata da qualcun altro
status=version-mismatch
-
Esiste già una dashboard con lo stesso nome nella cartella
status=name-exists
-
Esiste già una dashboard con lo stesso uid
status=name-exists
-
La dashboard appartiene al plugin
plugin title
status=plugin-dashboard
Il corpo della risposta ha le seguenti proprietà. Se un'altra dashboard ha lo stesso titolo, il status
valore èname-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" }
Ottieni la dashboard tramite uid
GET /api/dashboards/uid/:uid
Restituisce la dashboard corrispondente all'uid. I metadati restituiti potrebbero contenere informazioni sull'UID della cartella che contiene il dashboard.
Richiesta di esempio
GET /api/dashboards/uid/cIBgcSjkk HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
Example response
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 } }
Codici di stato:
-
200 — Trovato
-
401 — Non autorizzato
-
403 — Accesso negato
-
404 — Non trovato
Elimina dashboard tramite uid
DELETE /api/dashboards/uid/:uid
Elimina la dashboard corrispondente all'uid.
Richiesta di esempio
DELETE /api/dashboards/uid/cIBgcSjkk HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
Example response
HTTP/1.1 200 Content-Type: application/json { "title": "Production Overview", "message": "Dashboard Production Overview deleted", "id": 2 }
Codici di stato:
-
200 — Eliminato
-
401 — Non autorizzato
-
403 — Accesso negato
-
404 — Non trovato
Ottiene la dashboard principale
GET /api/dashboards/home
Restituisce la dashboard principale.
Richiesta di esempio
GET /api/dashboards/home HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
Example response
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" } }
Ottieni i tag della dashboard
GET /api/dashboards/tags
Restituisce tutti i tag delle dashboard.
Richiesta di esempio
GET /api/dashboards/tags HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
Example response
HTTP/1.1 200 Content-Type: application/json [ { "term":"tag1", "count":1 }, { "term":"tag2", "count":4 } ]