초오오오오오짜개발자의낙서장
그라파나 사용기 2 본문
graphana api를 이용하여 dash board 목록을 조회할수가 있다.
Accept: application/json
Content-Type: application/json
Authorization: Bearer api key 값
api : GET /apis/dashboard.grafana.app/v1beta1/namespaces/:namespace/dashboards
limit query parameter를 사용하여 한번에 가져오는 대쉬보드의 갯수를 조절할수 있고, continue token을 사용하여 다음 페이지의 대쉬보드를 가져올수 있다.
namespace는 대쉬보드를 생성할때 붙는 식별자인것 같다 지정하지 않으면 default가 붙는것 같다.
graphana api를 이용하여 dash board를 업데이트 할수가 있다.
POST /apis/dashboard.grafana.app/v1beta1/namespaces/default/dashboards/gdxccn HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer api key 값
공식 문서에는 다음과 같이 나와잇다.
하지만 method가 POST가 아니라 PUT 이다.
body에 그래프 정보를 몽땅 넣으면 된다.
그라파나 사이트 안에있는 JSON MODEL에서 값을 복붙하려면 안된다. 양식이 뭔가 다른듯 하다.
그라파나에서 대쉬보드 JSON 리스트를 불러온다음 해당 대쉬보드를 긁어오면 양식이 맞는다.
api를 쏴줘서 대쉬보드 JSON을 업데이트 하면 resourceVersion이 1씩 증가한다.
업데이트 할때에 이 버전을 맞춰야 버전 컨플릭트가 발생하지 않는다.
이로써 프론트엔드에서 그라파나 api를 호출해 대쉬보드를 변경할수 있게 되었다.
우리 프로젝트에 도움이 많이 되길 바란다.