기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
대시보드 버전 API
대시보드 버전 API를 사용하여 대시보드 버전을 검색하고 대시보드를 지정된 버전으로 복원할 수 있습니다.
참고
아마존 관리형 그라파나 워크스페이스에서 Grafana API를 사용하려면 유효한 Grafana API 토큰이 있어야 합니다. API 요청의 필드에 이를 포함시키세요. Authorization
API 호출을 인증하기 위한 토큰을 생성하는 방법에 대한 자세한 내용은 을 참조하십시오토큰으로 인증.
모든 대시보드 버전 가져오기
GET /api/dashboards/id/:dashboardId/versions
지정된 대시보드의 기존 대시보드 버전을 모두 가져옵니다dashboardId
.
쿼리 매개변수:
-
limit — 반환할 최대 결과 수입니다.
-
start - 쿼리를 반환할 때 시작할 버전입니다.
요청 예제
GET /api/dashboards/id/1/versions?limit=2?start=0 HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
응답의 예
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" } ]
상태 코드:
-
200 — 좋아요
-
400 — 오류
-
401 — 승인되지 않았습니다
-
404 — 대시보드 버전을 찾을 수 없음
대시보드 버전 가져오기
GET /api/dashboards/id/:dashboardId/versions/:id
주어진 ID를 가진 대시보드 버전을 가져오세요. 주어진 ID가 있는 대시보드의 버전을 가져오세요dashboardId
.
요청 예제
GET /api/dashboards/id/1/versions/1 HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
응답의 예
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" }
상태 코드:
-
200 — 좋아요
-
401 — 승인되지 않았습니다
-
404 — 대시보드 버전을 찾을 수 없음
대시보드 복원
POST /api/dashboards/id/:dashboardId/restore
대시보드를 지정한 대시보드 버전으로 복원합니다.
요청 예제
POST /api/dashboards/id/1/restore Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk { "version": 1 }
JSON 본문 스키마:
-
버전 - 복원할 대시보드 버전입니다.
응답의 예
HTTP/1.1 200 OK Content-Type: application/json; charset=UTF-8 Content-Length: 67 { "slug": "my-dashboard", "status": "success", "version": 3 }
JSON 응답 본문 스키마:
-
슬러그 — 대시보드 제목의 URL 친화적인 슬러그입니다.
-
status — 복원 성공 여부
-
버전 - 복원 후의 새 대시보드 버전.
상태 코드:
-
200 — 생성됨
-
401 — 승인되지 않았습니다
-
404 — 대시보드 또는 대시보드 버전을 찾을 수 없음
-
500 — 내부 서버 오류 (데이터베이스에서 대시보드 태그를 검색하는 중 문제가 발생했음을 나타냄)
오류 응답 예시:
HTTP/1.1 404 Not Found Content-Type: application/json; charset=UTF-8 Content-Length: 46 { "message": "Dashboard version not found" }
JSON 응답 본문 스키마:
-
메시지 - 실패 이유를 설명하는 메시지입니다.
대시보드 버전 비교
POST /api/dashboards/calculate-diff
두 대시보드 버전의 JSON 차이를 계산하여 두 대시보드 버전을 비교합니다.
요청 예제
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 본문 스키마:
-
base — 기본 대시보드 버전을 나타내는 객체입니다.
-
new — 새 대시보드 버전을 나타내는 객체입니다.
-
difftype — 반환할 diff 유형입니다. 유효 값은
json
및basic
입니다.
예제 응답 (JSON 차이)
HTTP/1.1 200 OK Content-Type: text/html; charset=UTF-8 <p id="l1" class="diff-line diff-json-same"> <!-- Diff omitted --> </p>
응답은 차이점을 텍스트로 표현한 것으로, 대시보드 값은 JSON으로 표시되며, 또는 같은 사이트에서 볼 수 있는 차이와 유사합니다. GitHub GitLab
상태 코드:
-
200 — 좋아요
-
200 — 요청이 잘못되었습니다. 잘못된 JSON이 전송되었습니다.
-
401 — 승인되지 않았습니다.
-
404 — 찾을 수 없음
예제 응답 (기본 차이)
HTTP/1.1 200 OK Content-Type: text/html; charset=UTF-8 <div class="diff-group"> <!-- Diff omitted --> </div>
응답은 두 JSON 객체 간의 차이에서 파생된 변경 사항의 요약입니다.
상태 코드:
-
200 — 좋아요
-
200 — 요청이 잘못되었습니다. 잘못된 JSON이 전송되었습니다.
-
401 — 승인되지 않았습니다.
-
404 — 찾을 수 없음