새벽 알림은 이제 그만! 상품 모니터링 자동화 여정
초기 상품 모니터링은 Slack 알림에 의존, 데이터 정합성 문제는 배치 처리로 확인하며 운영 부담 가중
온콜 시스템 도입 및 QA팀 지원으로 실시간 정합성 검증 가능해졌으나, 담당자 불명확 및 재처리 프로세스 부재 문제 발생
DLQ(Dead Letter Queue) 프로세스 도입으로 재처리 자동화, 수동 개입 최소화 및 처리 시간 단축
Datadog Workflow와 AI 자동 분석으로 온콜 발생 시 즉각적인 장애 진단 리포트 제공, 담당자 피로도 감소
개발자가 직접 정합성 검증 가능한 웹 페이지 구축으로 Data Flow 시각화 및 온디맨드 검증 체계 완성
상품 데이터 파이프라인의 실시간 동기화 아키텍처
상품 데이터의 실시간성이 중요한 이유는 등록-승인-노출-수정 과정 중 지연 발생 시 사용자 경험에 직접적인 영향을 미치기 때문입니다. 기존 Oracle DB에 산재된 상품 마스터 정보를 Aurora 및 OpenSearch로 이전하는 과정에서, 순차 오픈을 위해 Oracle 데이터를 CDC(Change Data Capture) 기반으로 실시간 동기화하는 아키텍처를 채택했습니다.
Debezium과 MSK Connect 활용: Debezium은 다양한 데이터베이스의 변경 이벤트를 캡처하고, MSK Connect는 이를 Kafka로 스트리밍하는 역할을 수행합니다. 이를 통해 데이터 변경 사항을 거의 실시간으로 전파할 수 있습니다.
배치 처리 대비 장점: 배치 방식은 특정 시점에만 데이터를 동기화하여 실시간성이 떨어지지만, CDC는 지속적인 변경 감지 및 전송으로 최신 데이터를 유지하는 데 유리합니다.
운영 복잡성: CDC 아키텍처는 초기 구축 및 운영에 복잡성이 따르지만, 상품 데이터의 즉각적인 반영이 필수적인 커머스 환경에서는 안정적인 서비스 제공을 위한 핵심 요소입니다.
DLQ(Dead Letter Queue)를 통한 재처리 자동화 전략
초기 모니터링 시스템의 주요 문제점 중 하나는 에러 발생 시 수동 개입이 필수적이었고, 이는 담당자의 피로도를 높이는 원인이었습니다. 특히 상품 데이터 동기화 실패의 상당수가 일시적인 네트워크 문제나 순서 문제였기에, DLQ(Dead Letter Queue) 프로세스 도입으로 재처리 자동화를 구현했습니다.
재시도 메커니즘: 메시지 처리 실패 시 즉시 실패 처리하는 대신, 3회까지 자동 재시도하여 일시적인 오류를 극복합니다. 이는 후속 메시지 병목을 최소화하면서도 오류 복구율을 높입니다.
DLQ 전송 및 로깅: 재시도 후에도 실패할 경우, 해당 메시지는 DLQ로 보내지고 상세 실패 로그가 기록됩니다. 이를 통해 최종 실패 건만 추적하여 수동 동기화 작업을 간소화할 수 있습니다.
효과: 이 프로세스 도입 후 수동 재처리 건수가 현저히 줄어들었으며, 사람의 개입이 필요한 시간을 단축하여 운영 효율성을 크게 향상시켰습니다.
Datadog Workflow 기반 AI 자동 장애 분석 시스템
온콜 발생 시 담당자가 Datadog APM, 로그 등을 직접 분석하는 과정의 비효율성을 개선하기 위해 Datadog Workflow와 AI를 결합한 자동 분석 시스템을 구축했습니다. 이 시스템은 알림 발생 즉시 장애 원인 분석 결과를 요약하여 팀 채널로 전송합니다.
Workflow 채택 이유: Bits AI의 매력에도 불구하고, 권한 이슈와 비동기 처리의 복잡성 때문에 기존 Datadog 권한으로 운영 가능한 Workflow를 선택했습니다. Workflow는 모니터 이벤트 기반으로 작동하며, 노코드(No-code) 자동화가 가능합니다.
자동 진단 로직: 평시 대비 에러 급증 배수, 에러율, 특정 리소스 집중도 등을 계산하여 이상 징후를 분석하고, 이를 사람이 즉각 이해할 수 있는 형태로 가공하여 Slack으로 전송합니다.
기대 효과: 담당자는 분석이 완료된 리포트를 즉시 확인하고 조치에 집중할 수 있어, 새벽 시간의 피로도를 획기적으로 줄이고 문제 해결 속도를 향상시킬 수 있습니다.
QA팀 협업 기반 온디맨드 정합성 검증 시스템
기존에는 데이터 정합성 검증을 위해 개발팀의 API 수정 및 배포, QA팀의 지원이 필수적이었습니다. 이를 개선하기 위해 개발자가 직접 온디맨드로 정합성을 실행할 수 있는 웹 페이지를 구축했습니다.
Data Flow 시각화: 웹 페이지를 통해 도메인 간 데이터 흐름을 시각적으로 확인할 수 있어, 어떤 컬럼이 모니터링되고 있는지 별도의 문의 없이 파악 가능합니다.
온디맨드 실행: 개발자가 직접 검증 조건을 지정하고 정합성 체크를 즉시 실행할 수 있게 되어, QA팀의 지원 없이도 신속한 검증이 가능해졌습니다.
자동 재실행 기능: 특정 주기마다 동일한 검증을 자동 재실행하여, 일시적인 타이밍 차이로 인한 오탐까지 걸러내는 체계를 완성했습니다.
결과: 이 시스템은 개발자의 셀프 서비스 역량을 강화하고, QA팀의 업무 부담을 줄이며, 데이터 정합성 이슈 발생 시 신속하고 정확한 대응을 가능하게 합니다.