API für Dashboard-Versionen - Amazon Managed Grafana

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

API für Dashboard-Versionen

Verwenden Sie die Dashboard-Versions-API, um Dashboard-Versionen abzurufen und ein Dashboard auf eine bestimmte Version zurückzusetzen.

Anmerkung

Um eine Grafana-API mit Ihrem Amazon Managed Grafana-Workspace verwenden zu können, benötigen Sie ein gültiges Grafana-API-Token. Sie fügen dies in das Authorization Feld in der API-Anfrage ein. Informationen zum Erstellen eines Tokens zur Authentifizierung Ihrer API-Aufrufe finden Sie unterAuthentifizieren Sie sich mit Tokens.

Holen Sie sich alle Dashboard-Versionen

GET /api/dashboards/id/:dashboardId/versions

Ruft alle vorhandenen Dashboard-Versionen für das Dashboard mit den angegebenen Werten abdashboardId.

Parameter abfragen:

  • limit — Maximale Anzahl zurückzugebender Ergebnisse.

  • start — Version, mit der bei der Rückgabe von Abfragen begonnen werden soll.

Beispielanforderung

GET /api/dashboards/id/1/versions?limit=2?start=0 HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk

Beispielantwort

HTTP/1.1 200 OK Content-Type: application/json; charset=UTF-8 Content-Length: 428 [ { "id": 2, "dashboardId": 1, "parentVersion": 1, "restoredFrom": 0, "version": 2, "created": "2017-06-08T17:24:33-04:00", "createdBy": "admin", "message": "Updated panel title" }, { "id": 1, "dashboardId": 1, "parentVersion": 0, "restoredFrom": 0, "version": 1, "created": "2017-06-08T17:23:33-04:00", "createdBy": "admin", "message": "Initial save" } ]

Statuscodes:

  • 200 — Okay

  • 400 — Fehler

  • 401 — Nicht autorisiert

  • 404 — Dashboard-Version nicht gefunden

Holen Sie sich die Dashboard-Version

GET /api/dashboards/id/:dashboardId/versions/:id

Ruft die Dashboard-Version mit der angegebenen ID für das Dashboard mit der angegebenen abdashboardId.

Beispielanforderung

GET /api/dashboards/id/1/versions/1 HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk

Beispielantwort

HTTP/1.1 200 OK Content-Type: application/json; charset=UTF-8 Content-Length: 1300 { "id": 1, "dashboardId": 1, "parentVersion": 0, "restoredFrom": 0, "version": 1, "created": "2017-04-26T17:18:38-04:00", "message": "Initial save", "data": { "annotations": { "list": [ ] }, "editable": true, "gnetId": null, "graphTooltip": 0, "hideControls": false, "id": 1, "links": [ ], "rows": [ { "collapse": false, "height": "250px", "panels": [ ], "repeat": null, "repeatIteration": null, "repeatRowId": null, "showTitle": false, "title": "Dashboard Row", "titleSize": "h6" } ], "schemaVersion": 14, "style": "dark", "tags": [ ], "templating": { "list": [ ] }, "time": { "from": "now-6h", "to": "now" }, "timepicker": { "refresh_intervals": [ "5s", "10s", "30s", "1m", "5m", "15m", "30m", "1h", "2h", "1d" ], "time_options": [ "5m", "15m", "1h", "6h", "12h", "24h", "2d", "7d", "30d" ] }, "timezone": "browser", "title": "test", "version": 1 }, "createdBy": "admin" }

Statuscodes:

  • 200 — Okay

  • 401 — Nicht autorisiert

  • 404 — Dashboard-Version nicht gefunden

Dashboard wiederherstellen

POST /api/dashboards/id/:dashboardId/restore

Stellt die von Ihnen angegebene Dashboard-Version eines Dashboards wieder her.

Beispielanforderung

POST /api/dashboards/id/1/restore Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk { "version": 1 }

JSON-Textschema:

  • Version — Die Dashboard-Version, auf die wiederhergestellt werden soll.

Beispielantwort

HTTP/1.1 200 OK Content-Type: application/json; charset=UTF-8 Content-Length: 67 { "slug": "my-dashboard", "status": "success", "version": 3 }

Schema des JSON-Antworttextes:

  • slug — Der URL-freundliche Slug des Titels des Dashboards.

  • Status — Ob die Wiederherstellung erfolgreich war oder nicht.

  • Version — Die neue Dashboard-Version nach der Wiederherstellung.

Statuscodes:

  • 200 — Erstellt

  • 401 — Nicht autorisiert

  • 404 — Dashboard- oder Dashboard-Version nicht gefunden

  • 500 — Interner Serverfehler (weist auf ein Problem beim Abrufen von Dashboard-Tags aus der Datenbank hin)

Beispiel für eine Fehlerantwort:

HTTP/1.1 404 Not Found Content-Type: application/json; charset=UTF-8 Content-Length: 46 { "message": "Dashboard version not found" }

Schema des Hauptteils der JSON-Antwort:

  • Nachricht — Eine Nachricht, in der der Grund für den Fehler erklärt wird.

Vergleichen Sie die Dashboard-Versionen

POST /api/dashboards/calculate-diff

Vergleicht zwei Dashboard-Versionen, indem der JSON-Unterschied zwischen ihnen berechnet wird.

Beispielanforderung

POST /api/dashboards/calculate-diff HTTP/1.1 Accept: text/html Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk { "base": { "dashboardId": 1, "version": 1 }, "new": { "dashboardId": 1, "version": 2 }, "diffType": "json" }

JSON-Textschema:

  • base — Ein Objekt, das die Basisversion des Dashboards darstellt.

  • new — Ein Objekt, das die neue Dashboard-Version darstellt.

  • difftype — Der Typ des zurückzugebenden Diffs. Gültige Werte sind json und basic.

Beispiel für eine Antwort (JSON-Diff)

HTTP/1.1 200 OK Content-Type: text/html; charset=UTF-8 <p id="l1" class="diff-line diff-json-same"> <!-- Diff omitted --> </p>

Die Antwort ist eine textuelle Darstellung des Unterschieds, wobei die Dashboard-Werte in JSON vorliegen, ähnlich den Unterschieden auf Websites wie GitHub oder. GitLab

Statuscodes:

  • 200 — Okay

  • 200 — Ungültige Anfrage, ungültiges JSON gesendet

  • 401 — Nicht autorisiert

  • 404 — Nicht gefunden

Beispiel für eine Antwort (Basic Diff)

HTTP/1.1 200 OK Content-Type: text/html; charset=UTF-8 <div class="diff-group"> <!-- Diff omitted --> </div>

Die Antwort ist eine Zusammenfassung der Änderungen, die sich aus dem Unterschied zwischen den beiden JSON-Objekten ergibt.

Statuscodes:

  • 200 — Okay

  • 200 — Ungültige Anfrage, ungültiges JSON gesendet

  • 401 — Nicht autorisiert

  • 404 — Nicht gefunden