04 / 07
YAML 기반 설정 관리
코드 수정 없이 알림 채널, 실행 시간, 조건을 제어하는 설정 기반 아키텍처
YAMLConfigurationQuartz
Configuration
YAML 기반 설정 관리
코드 수정 없이 YAML 설정 파일만으로 알림 채널, 실행 시간, 조건을 제어할 수 있다. 운영자가 직접 설정을 변경하여 즉시 반영 가능한 구조이다.
알림 채널 변경
notificationMethod 배열 수정으로 채널 추가/제거
실행 시간 제어
Cron 표현식으로 스케줄 변경
조건 변경
conditions 항목으로 알림 기준 조정
Notification Method
알림 채널 설정
YAML 설정
notificationMethod: ["call", "sms", "email", "slack"] time: "0 0/1 * * * ?"
설정 항목 설명
callAWS Connect 기반 음성 전화 발신smsAWS SNS 기반 SMS 문자 발송emailAWS SES 기반 이메일 발송slackSlack Bot API 기반 채널 메시지 전송Conditions
알림 조건 설정
YAML 설정
conditions: - 'total == 0' - 'fail > 100' - 'pending > 1000'
조건 평가 방식
total == 0전체 처리 건수가 0인 경우 (서비스 중단 의심)fail > 100실패 건수가 100건 초과 (대량 오류 발생)pending > 1000대기 건수가 1000건 초과 (처리 적체)Scheduling
Quartz 스케줄링
Quartz Scheduler 기반으로 모든 모니터링/알림 로직이 Cron 표현식에 따라 자동 실행된다.
| Cron 표현식 | 실행 주기 | 용도 |
|---|---|---|
| 0 0/1 * * * ? | 매 1분 | 실시간 HTTP/파일 모니터링 |
| 0 0 0 * * ? | 매일 00:00 | 일일 리포트 생성 |
| 0 0 9-18 * * ? | 업무 시간대 | 특정 시간대 반복 점검 |
Scheduling Flow
YAML (time 설정)→Quartz Scheduler→Cron Trigger→Monitor 실행→조건 평가→AlertHub