회사

CP-TO Watchdog 선행 지표 & 모니터링

후행 지표인 Backlog보다 먼저 운영 이상을 감지하는 선행 지표와 알림 파이프라인

수행기간 | 2026.01 ~ 2026.02

  • #Python
  • #Grafana
  • #Google Sheets
  • #SQLite

Backlog가 쌓인 뒤에야 알 수 있던 운영 이상

Problem

  • 기존 트리거가 후행 지표인 Backlog에 의존해 운영 이상을 늦게 감지
  • 지역별 지표를 조회할 때 N+1 쿼리가 반복 호출됨

My Role

  • Backlog보다 먼저 이상을 감지하기 위한 Target On Duty 지표 공식 설계
  • Grafana 메트릭 수집, Google Sheets 임계값 비교, 20분 쿨다운, 로그 기록으로 이어지는 파이프라인 구축
  • SQLite 복합 인덱스와 배치 조회로 지역별 조회 구조 개선

Result

  • 강남 지역 백테스트에서 기존 트리거보다 평균 13분 빠른 감지, AD10 diff +28.98% 확인
  • 지역별 N+1 쿼리를 100회에서 1회로 축소
  • False Alarm Rate 3.5%를 측정하고 1% 미만 달성을 위한 튜닝 과제 정의

기술적 의사결정

  • 선행 지표 Target On Duty 설계

    Backlog는 이상이 쌓인 뒤에야 오르는 후행 지표라 감지가 늦어 더 앞선 신호를 지표로 정의

  • SQLite 복합 인덱스와 배치 조회

    지역마다 반복 호출되던 N+1 쿼리를 한 번의 조회로 줄임

운영 고려

  • 같은 경보가 반복되지 않도록 20분 쿨다운 적용
  • False Alarm Rate 3.5%를 측정하고 1% 미만을 목표로 튜닝 과제 정의
AS-IS/TO-BE 설계: Backlog 기반 트리거에서 Target On Duty 선행 지표로
AS-IS/TO-BE 설계: Backlog 기반 트리거에서 Target On Duty 선행 지표로