GOOD4ME

[Grafana] Grafana CSV plugin time 설정 방법 / 경로 설정 방법 본문

개발.오류.정리/ETC.

[Grafana] Grafana CSV plugin time 설정 방법 / 경로 설정 방법

de_youn 2023. 1. 5. 12:24
반응형

 

지난 포스팅에서
테스트용으로 생성한 MSSQL DB
PySpark를 통해 대용량 데이터를 조회하는 데 성공했다.

이후, PySpark를 통해 MSSQL에 적재된 데이터를
전처리하여 csv 파일로 extracting하는 것까지 작업을 완료하였고
이 내용을 포스팅하기 전,
Grafana를 통해 csv 파일시각화해보고 싶었다.

하지만 Grafana로는 MySQL, MSSQL, InfluxDB, Prometheus 등의
DB 관련 데이터소스들만을 사용했기 때문에
CSV를 데이터소스로 사용해 본 경험은 전무후무했다.

이번 포스팅에서는 Grafana의 CSV plugin
어떻게 사용해야하는지에 대해 설명한다.

 

Grafana CSV plugin

 

먼저 CSV plugin이 설치되지 않았을 경우,
하단의 그림을 참고하여
해당 플러그인을 설치해야한다.

 

Grafana Plugins 탭으로 이동
Marcus Olsson의 csv plugin 클릭 후, 설치

 

이후, 왼쪽 사이드바에서
"Configuration" -> "Data Sources"에 진입한 후,
오른쪽에 보이는 파란색 "Add data source" 버튼을 클릭하고
제일 아래에 있는 "Others" 항목 중, "CSV"를 클릭하고 아래와 같이 세팅한다.

 

CSV Datasource 생성 완료

 

"Name"에는 Datasource명을 적으면 되고(아무거나 원하는 이름으로 기입)
Local에 csv가 있는 경우 "Local"을 선택(HTTP 사용법은 아직 미지)
"Path"에는 경로를 입력하면 되는데 경로 구분자는 역슬래쉬(\)가 아닌 일반 슬래쉬(/)를 사용해야한다.

 

발생한 문제와 해결 방법

 

CSV PATH ERROR

Data Source를 생성할 때,
커뮤니티에서는 사용할 csv 파일의 상위 디렉터리(폴더)명까지 기입하였고
이후, 대시보드 생성할 때, 사용할 csv 파일명을 입력하는 것이라고 알려져있다.

상단의 그림처럼 필자도 D:\ 하위에 csv파일이 존재했기에
"Path"D:/를 입력했지만 하단과 같은 오류 메세지가 출력됬다.

 

CSV 파일 불러오기 오류

 

"Relative path"아무것도 적지 않은 상태에서 발생한 오류이고
"Relative path"에 상대경로와 파일명(test.csv)을 조합하여 모든 경우의 수를 입력했지만
"illegal file path: test.csv" 라는 오류 메세지만 출력될 뿐이었다.

이에 대한 해결책은
Data Source 생성 시, "D:/" 라고 기입한 부분을
파일명까지 "D:/test.csv" 이렇게 기입하면
대시보드에서 Path를 굳이 입력하지 않고도 csv를 불러올 수 있었다.

 

TIME COLUMN ERROR

이 오류가 가장 찾기 힘들었던 오류였다.

분명 csv 파일에 YYYY-MM-DD HH:mm:SS 형태로 되어있는 컬럼이 존재했고
Panel 생성할 때, "Fields"에서 해당 컬럼 선택 후, "Type"Time 으로 설정했지만
Table 확인 시, 계속 String Type에 머물러 있는 문제를 확인했었다.

 

Time Field 타입 변경 오류

 

이 때문에 계속 "Data is missing a time field" 메세지가 출력되었고
csv 파일 저장 시, 일자 컬럼에 pd.to_datetime() 까지 적용도 해봤지만 속수무책이었다.

방법은 정말 간단하였다.

나는 한 번도 신경쓰지 않았던 "Transform" 탭이 그 해답이었는데
우선 "Fields" 에서 일자 컬럼의 "Type"을 String으로 설정한 후,
"Transform" 탭에서 "Convert field type"을 입력 또는 찾아서 선택하고
"Field"에 일자 컬럼명을 기입하고 "Type"은 Time으로, 날짜 형식은 알맞게 기입한 결과
상단의 문제가 해결되었다.

 

Transform 탭 - Convert field type 선택
일자 타입 변경 성공

 

2~3년동안 Grafana를 사용하면서
"Transform" 탭은 한 번도 눈길 준 기억도 없고
굳이 사용할 필요성도 못 느꼈었는데
이번 기회에 "Transform" 탭의 소중함을 느끼게 되었다.😀😂😂😂


아 참고로 원작자였던 marcusolsson 님은 이제 더 이상 해당 플러그인의 maintainer가 아니라고 한다.

Grafana team에 도네했다고...ㅠㅠ

반응형
Comments