← 기술 목록으로

Grafana 기반 데이터·DB 모니터링 구축

서버 10~20대와 DB·수집·고객사 동기화 지표를 같은 시간축 대시보드로 모으고, 임계값 알림을 메신저로 연결한 작업

기간2024–2025
소속래브라도랩스(LabradorLabs)
역할데이터 엔지니어
PrometheusGrafanaPostgreSQLMySQLExportercAdvisorAlerting

1확인해야 할 시스템이 늘어난 문제

팀에서 운영하는 서버가 10~20대로 늘면서, 장애가 생길 때마다 서버에 접속해 DB와 로그를 따로 확인하는 방식이 한계에 닿았습니다. 수집 누락, 수집량 급증, DB replica 지연, 고객사로 나가는 데이터 상태가 서로 다른 화면에 흩어져 있었습니다.

2무엇을 한 화면에 모았나

Prometheus와 Grafana를 사용해 서버와 DB 상태를 공통 대시보드로 묶었습니다. 데이터 현황은 PostgreSQL의 시계열 데이터와 연결해 같은 시간축으로 비교했습니다.

서버, DB, 수집 통계, 고객사 데이터 상태가 Prometheus와 PostgreSQL 시계열을 거쳐 Grafana와 메신저 알림으로 연결되는 구성도
서버·DB·수집·고객사 데이터 지표를 모아 같은 시간축으로 비교하고 이상 상태는 알림으로 연결했습니다.

3알림과 운영

대시보드에 더해, 임계값을 넘으면 메신저와 이슈 관리 도구로 알림이 가도록 연결했습니다. 토큰 만료, 백업 실패, 데이터 동기화 지연처럼 미리 조치할 수 있는 항목은 장애 전에 알려 주도록 했습니다. 서버와 애플리케이션 로그 수집에는 Vector를 사용했습니다.

4결과

10~20대 서버 — 공통 상태를 한 화면에서 확인
DB·수집·배포 — 서로 다른 지표를 같은 시간축으로 비교
선제 대응 — 만료·지연·실패를 알림으로 먼저 확인

5제가 맡은 부분

공통으로 볼 지표를 정하고 Prometheus 수집, Grafana 대시보드, PostgreSQL 시계열 조회와 알림을 구성했습니다. 개별 크롤러의 내부 로직은 담당자가 관리했고, 저는 전체 수집량과 누락, DB·서버, 고객사 데이터 흐름을 함께 볼 수 있는 관측 구조를 맡았습니다.