개발 블로그

Grafana와 PostgreSQL 간의 시간 불일치 문제 해결 본문

DB/PostgreSQL

Grafana와 PostgreSQL 간의 시간 불일치 문제 해결

draidev 2025. 3. 8. 20:51

개요

  1. PostgreSQL에서 저장되는 table의 시간과 Grafana에서 끌어와서 display해주는 시간이 KST로 TIMEZONE을 같게 설정하더라도 9시간의 격차가 발생하면서 시간대가 다른 문제가 발생.
  2. 현재 시간이 09:00인데도 불구하고 Grafana에서는 00:00시 까지 밖에 안보여줌.

PostgreSQL Timezone
PostgreSQL query
Grafana UST
Grafana KST

  • 위 캡처 화면을 보면 PostgreSQL 서버에서 시간대를 확인 했을 때 , Asia/Seoul로 되어있지만, Grafana에서 TIMEZONE을 오히려 UTC로 해야 쿼리 결과가 서로 같은 상황이 발생.
  • 그리고 Time Series 대시보드의 경우는 현재 시간에 추가된 데이터가 즉각 Grafana에 반영되지 않고 9시간이 지나서야 반영되는 문제가 발생.

 

해결

  • 아래와 같이 TIMEZONE 자료형을 쓰는 테이블 컬럼에 대해서 PostgreSQL의 TIMEZONE인 Asia/Seoul을 명시적으로 붙여줘서 해결함.
  • AT TIME ZONE 'Asiz/Seoul'
SELECT
  time AT TIME ZONE 'Asia/Seoul' as "time",
  stime AT TIME ZONE 'Asia/Seoul' as "stime",
Comments