Miscellaneous

Grafana 멀티 데이터소스 하나의 차트에 같이 표시하기

[혜안] 2022. 9. 7. 11:44
728x90

Grafana는 다양한 데이터소스를 추가하여 완성도 높은 그래픽으로 데이터를 시각화하기 아주 좋은 툴입니다.

개인적인 용도로 라즈베리파이에 돌리고 있는 다양한 어플리케이션이 있는데요.

이 어플리케이션들이 뱉어내는 로그와 DB에 쌓는 데이터들을 모아 한눈에 파악할 수 있도록 Grafana를 꾸미고 있습니다.

 

이번에는 자체 제작한 코인 자동거래 봇이 계산한 지표들과 거래기록을 한 시계열데이터 차트 안에 넣을 수 없는지 고민했습니다.

우선 결과물 부터 보자면,

적용한지 얼마 되지 않아 그래프가 다 채워지지는 않았습니다만,

15분 간격의 리플(XRP) 가격과 볼린저 밴드를 그리고 있는 시계열 그래프입니다.

리플가격과 볼린저 밴드 High, Low 는 자동거래 봇이 로그로 뱉어내고 있습니다.

로그 형식은 json 이고, Loki로 수집을 하고 있구요.

그 다음, 저 그래프 상에 자세히 보면 주황색과 빨간색으로 2개 점이 보입니다.

자동거래 봇이 매도/매수를 한 지점을 점으로 찍도록 했습니다.

매도/매수 데이터는 mariadb에 저장을 하고 있는데요.

때문에 Grafana의 데이터소스 중 Mariadb를 추가하여 정보를 추출했습니다.

추가로 맨 위 빨간 라인은 매도 기준선입니다.

고정값이 아니고 수시로 바뀔 수 있는 값이며, 마찬가지로 Mariadb에서 추출해오고 있습니다.

 

결국 Loki와 Mariadb 2개의 데이터 소스를 짬뽕해서 하나의 그래프에 표시한 결과인거죠.

 

이렇게 하나의 차트에 두 개 이상의 멀티 데이터소스를 추가하는 방법은 아래와 같습니다.

데이터소스 선택 시, 하나의 데이터소스를 선택하는 것이 아니라,

Mixed 라는 항목을 선택하면 각 쿼리 별로 데이터소스를 선택할 수 있습니다.

총 6개의 쿼리를 사용하고 있는데요.

쿼리 별로 Loki 3개, mariadb 3개 이렇게 서로다른 데이터 소스를 사용하고 있는게 보입니다.

 

이렇게 추가한 데이터 소스로,

어떤 건 선으로 표시하고, 어떤 건 점으로 표시하는 방법은 다음 포스팅에서 다루도록 하겠습니다.

 

 

 

728x90