로그는 운영의 블랙박스다. 무언가 잘못됐을 때 "무슨 일이 있었는지"를 알려주는 거의 유일한 일차 증거다. 그런데 분산 시스템에서 로그는 곧바로 문제가 된다. 수백 개의 Lambda, 수천 개의 컨테이너, 온프레미스 서버들이 각자 로그를 토해내는데, 이걸 어디에 모으고, 어떻게 시간순으로 정렬하고, 어떻게 검색하고, 실시간으로 특정 패턴을 어떻게 잡아내고, 그리고 — 가장 현실적으로 — 폭발하는 로그 비용을 어떻게 통제할 것인가. CloudWatch Logs는 AWS 위의 거의 모든 서비스가 로그를 흘려보내는 중앙 싱크이고, 그 위에 실시간 라우팅(Subscription)·메트릭 추출(Metric Filter)·대화형 분석(Insights)이 쌓여 있다.
오늘은 이 로그 파이프라인의 내부로 들어간다. 단순히 "로그가 그룹과 스트림으로 나뉜다"가 아니라, 왜 이 두 단계 계층이 존재하는지, Subscription Filter가 어떻게 로그를 거의 실시간으로 다른 서비스로 흘려보내는지, Logs Insights의 쿼리 엔진이 어떤 방식으로 동작하고 왜 스캔량으로 과금되는지, 그리고 로그가 왜 이렇게 비싸고 그 비용을 어떻게 잡는지를 파고든다. DOP 시험에서 로그는 "실시간으로 OpenSearch에 적재", "외부 NGINX 로그에서 알람", "멀티계정 중앙 집계", "로그 비용 폭증 통제" 같은 시나리오로 매 회 등장한다.