룰 구조
- Trigger — 이벤트나 조건.
- Filter — 특정 Flow·테넌트·비용 임계값 등으로 좁힘.
- Channel — 알림 가는 곳 (채널 참고).
- Template — 메시지 본문 커스터마이즈.
- Rate limit — 단위 시간당 알림 캡 (홍수 방지).
Trigger 타입
이벤트 트리거
이산 이벤트에 발화:- Flow publish — 새 버전 배포됨.
- Flow rollback — 롤백 일어남 (보통 고우선순위).
- 자동 롤백 — 자동 롤백 트리거됨 (거의 응급).
- 승인 요청 — 새 승인 대기.
- 승인 결정 — 승인이 승인되거나 거부됨.
- 시크릿 로테이션 — 커넥터나 provider 키 로테이션.
- 멤버 역할 변경 — 접근 변경.
- 개선 배포 — 개선 출시됨.
임계값 트리거
지표가 윈도우에 걸쳐 지속적으로 임계값 넘을 때 발화:- 시그널률 — 시간당 시그널 임계값 이상.
- 에러율 — 시간당 트레이스 에러 임계값 이상.
- 판정률 — NOT_SUPPORT 률 임계값 초과.
- 실행당 비용 — 평균 비용 임계값 초과.
- 일일 비용 — 총 일일 비용 예산 초과.
- 지연 p95 — p95 지연 임계값 이상.
- 리트리벌 히트율 — 0 히트 리트리벌 비율.
패턴 트리거
Nora 가 감지하는 특정 패턴에 발화:- 회귀 — 고쳐진 클러스터 재출현.
- 새 클러스터 — 5+ 시그널로 새 시그널 클러스터 형성.
- 지속 클러스터 성장 — 기존 클러스터가 하루에 10+ 시그널 얻음.
침묵 트리거
일어나야 할 것이 안 일어날 때 발화:- 놓친 스케줄 — 스케줄 Trigger 가 발화 안 함.
- 트레이스 없음 — Flow 가 N 시간 실행 못 받음 (상류 깨짐?).
- 피드백 침묵 — 활성 실행 있는 Flow 에 N 일간 피드백 제출 없음 (QA 리뷰 중?).
룰 추가
Settings → Notifications → Alerts → New:- Trigger 타입 선택.
- Trigger 세부 설정.
- 필터 추가 (Flow, 테넌트, 비용 버킷 등).
- 채널 선택.
- 요율 제한 설정 (기본은 룰당 5분에 1 알림).
- 저장.
필터
모든 룰이 필터 수용:- Flow — 특정 Flow slug 또는 “어느 Flow 든”.
- Version — 특정 배포 버전.
- Tenant — 특정 테넌트 (멀티테넌트 워크로드).
- 환경 — Prod / Staging / Dev (워크스페이스 태그 통해).
- Feature — 트레이스의 커스텀 기능 플래그.
템플릿
기본 템플릿은 합리적. 원할 때 커스터마이즈:- 특정 포맷 (티켓팅 시스템의 기대 입력 매치).
- 추가 컨텍스트 (트레이스 링크, 감사 항목 링크).
- 지역화 언어.
요율 제한
모든 룰이 요율 제한 가짐. 기본: 룰당 5분에 1 알림.- 플래핑 임계값이 Slack 스팸하는 것 방지.
- 클러스터 이벤트를 단일 “지난 5분 5 이벤트” 요약으로 그룹화.
묵음
어느 룰이든 일시 묵음 가능:- 1시간 묵음 — 계획된 배포나 조사 중.
- 무기한 묵음 — 룰이 과잉 발화하고 리뷰 필요할 때. 묵음 해제되거나 룰 삭제 후 알림 재개.
룰 의존성
복잡한 플로우는 룰 체인:- 룰 A 발화 시 룰 B 를 30분 묵음 — 알림 스톰 방지.
- 룰 A 발화하고 15분 미확인이면 룰 C 로 에스컬레이션 — Slack 이 무시되면 온콜 페이지.