운영 중 · 2024–25
Grafana 기반 사내 데이터·DB 모니터링 구축
DB·크롤러·백업·배포 지표를 같은 시간축으로 모아 장애 원인을 확인했습니다.
기간2024–2025
소속래브라도랩스(LabradorLabs)
역할데이터 엔지니어
Grafana모니터링알람
작업 요약
팀 서버 약 10~20대의 상태를 한 화면에서 확인
서버마다 접속해 상태를 확인해야 했습니다
팀에서 운영하는 서버가 10~20대로 늘면서, 장애가 생길 때마다 서버에 접속해 DB와 로그를 따로 확인하는 방식으로는 원인을 찾는 데 시간이 걸렸습니다. 수집 누락, 수집량 급증, DB replica 지연, 고객사로 나가는 데이터 상태가 서로 다른 화면에 흩어져 있었습니다.
무엇을 한 화면에 모았나
Prometheus와 Grafana를 사용해 서버와 DB 상태를 공통 대시보드로 묶었습니다. 데이터 현황은 PostgreSQL의 시계열 데이터와 연결해 같은 시간축으로 비교했습니다.
- 서버 — CPU, 메모리, 디스크, 컨테이너 사용량
- DB — read/write, connection, replica 상태와 지연
- 수집 — 크롤러 실행 여부, 누락, 시간대별 수집량 증감
- 고객사 데이터 — 배포·동기화 진행률, 오류와 지연
알림과 운영
대시보드에 더해, 임계값을 넘으면 메신저와 이슈 관리 도구로 알림이 가도록 연결했습니다. 토큰 만료, 백업 실패, 데이터 동기화 지연처럼 미리 조치할 수 있는 항목은 장애 전에 알려 주도록 했습니다. 서버와 애플리케이션 로그 수집에는 Vector를 사용했습니다.
결과
10~20대 서버공통 상태를 한 화면에서 확인
DB·수집·배포서로 다른 지표를 같은 시간축으로 비교
선제 대응만료·지연·실패를 알림으로 먼저 확인
제가 맡은 부분
공통으로 볼 지표를 정하고 Prometheus 수집, Grafana 대시보드, PostgreSQL 시계열 조회와 알림을 구성했습니다. 개별 크롤러의 내부 로직은 담당자가 관리했고, 저는 전체 수집량과 누락, DB·서버, 고객사 데이터 흐름을 함께 볼 수 있는 모니터링 구성을 맡았습니다.