SLO 기반 알림

하루·2026년 3월 19일

SLO 기반 알림

알림 기준을 어떻게 정할 건지가 문제다. CPU 75%면 알림? 에러율 1%면 알림? 이 숫자들이 감으로 정해진 거라면 SLO 달성과 직접 연결이 안 된다.

SLO 기반 알림은 SLO와 Error Budget을 기준으로 알림을 설계하는 방식이다.


Burn Rate

Error Budget이 얼마나 빠르게 소진되고 있는지를 나타내는 지표다.

  • SLO: 월 99.9% 가용성 → Error Budget = 월 43.2분

  • Burn Rate 1 = 정상 속도로 소진 중

  • Burn Rate 10 = 10배 빠르게 소진 중

  • Burn Rate 720 = 1시간 안에 한 달치 Error Budget을 다 쓴다

    Burn Rate가 높을수록 긴급하다.


    왜 Burn Rate 기반으로 설계하나

    방식문제
    단순 에러율 기반에러율 1%가 1분인지 1시간인지 모른다
    고정 임계값 기반SLO와 연결이 없어서 실제 영향도를 모른다
    Burn Rate 기반SLO 달성 여부에 직접 연결되어 있다

    에러율이 낮아도 오래 지속되면 Error Budget이 많이 소진된다. 반대로 에러율이 높아도 금방 회복되면 SLO에 영향이 없다. Burn Rate는 이 둘을 모두 반영한다.


    멀티 윈도우 알림

    Burn Rate만으로는 부족하다. 단기 급등인지 장기 지속인지 구분이 안 되기 때문이다.

    윈도우역할
    1시간지금 당장 빠르게 소진되고 있는지 감지
    6시간단기 급등이 아니라 실제 지속되는 문제인지 확인

    두 윈도우 모두 Burn Rate가 높을 때만 알림을 낸다. 1시간만 높으면 노이즈일 가능성이 크다.


    알림 티어 설계

    티어Burn Rate 기준대응
    Page (즉시 대응)14x 이상1시간 안에 한 달 Error Budget 5% 소진
    Ticket (업무 시간 대응)1x ~ 3x느리게 소진 중, 당장 급하진 않음

    모든 알림을 Page로 설계하면 Alert Fatigue가 온다. 긴급도에 따라 티어를 나눠야 한다.


    정리

    SLO 기반 알림 설계 순서는 이렇다.

    SLO 정의 → Error Budget 계산 → Burn Rate 설계 → 알림 티어 설정

    기존 임계값 방식보다 복잡하지만 사용자 영향도와 직접 연결되어 있고, Alert Fatigue를 줄일 수 있다. 긴급한 것과 그렇지 않은 것을 구분하는 게 핵심이다.

0개의 댓글