log-management

4 개의 포스트

Amazon CloudWatch, 운영, (새 탭에서 열림)

Amazon CloudWatch가 운영, 보안 및 규정 준수 데이터를 통합 관리하고 분석할 수 있는 새로운 기능을 도입했습니다. 이 업데이트를 통해 데이터 중복과 비용을 줄이면서 여러 소스의 로그를 자동으로 정규화하고, Apache Iceberg 호환 형식을 통해 외부 분석 도구와의 연동성을 극대화했습니다. 이제 사용자는 복잡한 파이프라인 없이도 통합된 환경에서 운영 지표와 비즈니스 데이터를 실시간으로 상관 분석하여 심도 있는 인사이트를 얻을 수 있습니다. **데이터 수집 및 정규화의 간소화** * AWS Organizations와 통합되어 CloudTrail, VPC Flow Logs, AWS WAF, Route 53 리졸버 로그 등 여러 리전 및 계정의 AWS 로그를 자동으로 수집합니다. * CrowdStrike, Okta, SentinelOne, GitHub 등 타사 보안 및 생산성 도구의 로그를 수집할 수 있는 사전 구축된 커넥터를 제공합니다. * OCSF(Open Cybersecurity Schema Framework) 및 OTel(Open Telemetry) 형식을 기본 지원하여 데이터 일관성을 확보하며, Grok 프로세서를 통해 커스텀 파싱과 필드 연산을 수행할 수 있습니다. **Iceberg 호환성을 통한 데이터 개방성 및 비용 절감** * Amazon S3 Tables를 통해 Apache Iceberg 호환 형식으로 로그 데이터에 접근할 수 있는 기능을 도입했습니다. * CloudWatch 내부뿐만 아니라 Amazon Athena, Amazon SageMaker Unified Studio 등 Iceberg를 지원하는 모든 외부 도구에서 별도의 데이터 복제 없이 직접 분석이 가능합니다. * 통합 데이터 저장소 구조를 채택함으로써 여러 도구에 동일한 데이터를 중복 저장할 필요가 없으며, 복잡한 ETL 파이프라인 유지보수에 드는 운영 오버헤드를 줄였습니다. **강력한 로그 분석 및 시각화 도구** * 자연어 기반 쿼리를 비롯해 LogsQL, PPL, SQL 등 다양한 쿼리 언어를 단일 인터페이스에서 사용할 수 있습니다. * 새로운 'Facets' 인터페이스를 통해 소스, 애플리케이션, 계정, 리전 및 로그 유형별로 직관적인 필터링이 가능합니다. * 지능형 파라미터 추론 기능을 지원하여 여러 AWS 계정과 리전에 걸친 방대한 로그 그룹에 대해 효율적인 교차 쿼리를 실행할 수 있습니다. **실용적인 권장사항** 운영 로그와 보안 로그가 서로 다른 도구에 분산되어 있어 상관 분석에 어려움을 겪거나, 로그 분석을 위해 복잡한 ETL 프로세스를 운영 중인 조직에 이 기능을 적극 추천합니다. 특히 CloudWatch의 통합 관리 뷰를 통해 전체 데이터 소스를 한눈에 파악하고, OCSF 정규화 기능을 활용하여 보안 분석의 표준화를 시작하는 것이 좋습니다.

How we scaled fast, reliable configuration distribution to thousands of workload containers (새 탭에서 열림)

데이터독(Datadog)은 초당 수백만 개의 로그를 처리하는 대규모 분산 환경에서 사용자가 설정한 로그 파싱 규칙 등 '컨텍스트 데이터'를 수천 개의 컨테이너에 실시간으로 전파해야 하는 과제에 직면해 있습니다. 단순히 데이터베이스를 조회하거나 짧은 주기의 캐시를 사용하는 방식은 대규모 트래픽 환경에서 DB 부하와 지연 시간 문제를 야기하며, 이를 해결하기 위해 데이터독은 안정성과 확장성을 모두 고려한 독자적인 설정 전파 시스템을 구축했습니다. ### 실시간 설정 전파의 기술적 도전 과제 * **컨텍스트 데이터의 중요성**: 로그 파싱 규칙, 민감 데이터 스캐너 설정, 저장 쿼터 등 사용자별(per-tenant) 설정 데이터는 데이터독 서비스가 고객 데이터를 처리하는 방식의 핵심을 이룹니다. * **낮은 지연 시간 요구**: 사용자가 UI에서 설정을 변경하면 '라이브 테일(Live Tail)'과 같은 실시간 서비스에 즉각 반영되어야 하며, 이는 수천 개의 워크로드 컨테이너가 변경 사항을 거의 동시에 인지해야 함을 의미합니다. * **고도의 신뢰성**: 컨텍스트 데이터는 데이터 처리에 필수적이므로, 이 데이터를 공급하는 시스템은 어떤 장애 상황에서도 견고하게 동작해야 하는 '록 솔리드(rock solid)'한 수준의 안정성이 요구됩니다. ### 단순 접근 방식의 한계 * **온디맨드 조회의 불가능**: 로그가 들어올 때마다 DB에서 설정을 읽어오는 방식은 초당 수십만 건의 읽기 요청을 발생시켜 DB가 감당할 수 없는 수준의 부하를 줍니다. * **로컬 캐싱의 트레이드오프**: 각 컨테이너에 데이터를 캐싱하고 일정 시간마다 갱신하는 방식은 DB 부하를 줄일 수 있지만, 캐시 만료 시간만큼 설정 반영이 늦어져 사용자 경험을 저해합니다. 캐시 기간을 늘릴수록 지연은 심해지고, 줄일수록 DB 부하는 급증하는 딜레마가 발생합니다. ### V1 아키텍처: Kafka 기반 캐시 무효화 * **작동 원리**: 사용자가 설정을 변경하면 DB에 저장된 후 Kafka를 통해 무효화 알림(invalidation message)이 브로드캐스트됩니다. 이를 수신한 모든 워크로드 컨테이너는 해당 테넌트의 데이터만 DB에서 다시 읽어와 캐시를 갱신합니다. * **장점**: 수년간 잘 작동했으며, 평상시 DB 읽기 횟수를 최소화하면서도 설정 변경 시에만 신속하게 업데이트를 수행할 수 있었습니다. * **확장성 한계**: 데이터독의 규모가 커짐에 따라 한 번의 설정 변경이 수천 개의 컨테이너에서 동시에 DB 조회를 일으키는 '천둥 벌거숭이(thundering herd)' 문제를 야기했습니다. 이는 중앙 DB에 막대한 부하를 주며, DB 장애 시 설정 전파가 완전히 중단되는 취약점을 드러냈습니다. 사용자 설정 변경이 실시간으로 반영되어야 하는 대규모 분산 시스템에서는 중앙 집중식 데이터베이스에 직접 의존하는 구조를 탈피해야 합니다. 워크로드 컨테이너가 DB에 직접 접근하여 데이터를 가져오는 대신, 변경 사항을 안정적으로 밀어넣어 주거나 중간에 완충 역할을 하는 계층을 두어 DB 부하를 격리하고 시스템 전체의 복원력을 높이는 설계가 권장됩니다.

Engineering spotlight: Marie-Laure Bardonnet (새 탭에서 열림)

데이터독(Datadog)의 시니어 엔지니어링 매니저 마리 로르 바르도네(Marie-Laure Bardonnet)는 인턴으로 시작해 대규모 로그 관리 팀을 이끄는 리더로 성장하며, 기술적 호기심과 자기 주도적인 커리어 설계의 중요성을 강조합니다. 그녀는 제품 로드맵과 시스템 신뢰성 사이의 균형을 맞추는 엔지니어링 중심의 의사결정 체계를 구축하고, 조직의 성장에 맞춘 유연한 팀 구조 재편을 통해 구성원과 제품이 함께 성공할 수 있는 환경을 조성하고 있습니다. 이러한 여정은 기술적 전문성을 바탕으로 리더십 역량을 확장하려는 엔지니어들에게 실무적인 통찰과 커리어 확장의 방향성을 제시합니다. ### 프론트엔드에서 대규모 백엔드로의 기술적 전환 * **제품 기여:** 인턴 시절부터 노트북(Notebooks) 제품 개발에 참여했으며, 정규직 전환 후 대시보드 팀에서 모든 화면 크기에 대응하는 반응형 그리드 시스템의 백엔드 레이아웃을 구현했습니다. * **도전 과제 확장:** 분산 백엔드 시스템에 대한 호기심을 바탕으로 로그(Logs) 백엔드 팀으로 이동하여, 매일 수백만 건의 페이로드를 실시간으로 수집(Ingestion), 처리, 농축(Enrichment), 저장 및 쿼리하는 대규모 시스템을 경험했습니다. * **플랫폼 협업:** 로그 제품의 기술적 요구사항이 복잡해짐에 따라, 공통 기능을 대규모로 제공하는 플랫폼 팀과 긴밀히 협력하여 로그 서비스의 성능을 강화했습니다. ### 시니어 엔지니어링 매니저의 역할과 의사결정 * **로드맵 균형:** 분기별로 OKR(Objectives and Key Results)을 설정할 때, 제품 팀의 요구사항과 시스템 신뢰성, 확장성, 기술 부채 해결과 같은 기술적 로드맵 사이의 정교한 균형을 유지합니다. * **기술 문서 리뷰:** 팀의 의사결정을 지원하기 위해 RFC(Request for Comments)와 장애 사후 분석 보고서(Postmortems)를 검토하며 팀 간의 의존성을 식별하고 노력을 정렬합니다. * **채용 위원회 활동:** 매주 채용 위원회에 참여하여 최종 채용 권고를 내리고, 조직 전체의 엔지니어 레벨링(Leveling)이 일관되게 유지되도록 관리합니다. ### 효율적인 실행을 위한 조직 구조 재편 * **미래 예측 기반 구조화:** '1년 후 우리가 해결해야 할 문제는 무엇인가?'라는 질문을 바탕으로, 제품과 구성원이 모두 성공할 수 있는 방향으로 팀 구조를 재설계합니다. * **3-Horizon Plan:** 제품 관리 팀과 협력하여 3단계 지평 계획을 수립하고, 고객의 니즈에 맞춰 미래 투자를 합리화하며 조직의 목표를 정렬합니다. * **성장 기회 창출:** 각 구성원의 레벨과 트랙(IC 또는 매니지먼트)에 적합한 업무 범위와 도전 과제를 할당하고, 적절한 멘토링이 제공될 수 있도록 환경을 조성합니다. ### 자기 주도적 커리어 성장 전략 * **성찰과 분리:** 현재 하고 있는 일과 미래에 하고 싶은 일을 분리하여 생각하고, 자신이 업무에서 얻는 즐거움과 남기고 싶은 유산(Legacy)이 무엇인지 파악해야 합니다. * **다각적 균형:** 자신이 좋아하고 잘하는 일, 새로운 학습을 돕는 일, 그리고 조직의 우선순위에 부합하는 일 사이에서 균형점을 찾는 것이 중요합니다. * **불확실성 수용:** 성장은 익숙한 환경에서 벗어나 모르는 것을 받아들이고 도전할 때 발생하며, 동료들의 피드백을 성장의 검증 도구로 활용해야 합니다. **실용적인 제언** 엔지니어로서 커리어를 확장하고 싶다면 현재의 직무에 안주하지 말고 기술적 호기심을 따라 팀 이동이나 직군 전환을 적극적으로 타진해 보세요. 특히 매니지먼트 트랙을 고민한다면 기술적 문서를 리뷰하는 역량과 더불어, 조직의 비즈니스 목표와 기술적 건전성 사이의 우선순위를 조율하는 연습이 필수적입니다.

Improving trust with Datadog Log Management (새 탭에서 열림)

Datadog은 비밀번호 재설정과 같은 중요 이메일의 전송 신뢰성과 가시성을 확보하기 위해 Amazon SES와 자사의 로그 관리 솔루션을 결합한 서버less 모니터링 시스템을 구축했습니다. 기존 Amazon SES와 CloudWatch만으로는 특정 수신자의 이메일 수신 여부 등을 실시간으로 파악하고 대응하기에 한계가 있었으나, 이 파이프라인을 통해 지원팀이 즉각적으로 문제를 진단할 수 있게 되었습니다. 결과적으로 최소한의 유지보수로 운영 효율성을 높이면서도 전송 프로세스 전반에 대한 높은 수준의 관측성을 확보했습니다. **Amazon SES 이벤트 추출 및 파이프라인 구성** * **이벤트 트리거 설정**: Amazon SES의 'Configuration Sets'를 사용하여 이메일 전송 과정에서 발생하는 bounce, click, complaint, delivery, open, reject, send 등 모든 주요 이벤트를 추적합니다. * **서버리스 아키텍처**: SES에서 발생한 이벤트는 Amazon SNS(Simple Notification Service)로 게시되며, 이는 다시 AWS Lambda 함수를 실행시키는 트리거가 됩니다. * **데이터 전달**: Lambda 함수는 수신된 이메일 이벤트를 Datadog Log Management로 전달합니다. 이 과정에서 Terraform을 사용하여 SNS 토픽 생성, SES 이벤트 대상 지정, IAM 역할 및 Lambda 함수 구성을 코드 기반(IaC)으로 관리합니다. * **안전한 인증**: 프로덕션 환경에서는 Datadog API Key를 암호화하여 보안을 강화할 것을 권장합니다. **Datadog에서의 데이터 가시성 및 인덱싱** * **자동 파싱**: AWS에서 Datadog으로 전송된 로그는 JSON 형식으로 전달되어 Datadog의 기존 통합 파이프라인을 통해 자동으로 처리됩니다. * **패싯(Facet) 활용**: 이메일 이벤트 유형(event type)이나 제목(subject)과 같은 주요 파라미터를 '패싯'으로 변환하여, 지원팀이 특정 이메일 로그를 단 한 번의 클릭으로 쉽게 검색하고 필터링할 수 있게 구성합니다. * **로그 기반 모니터링**: 인덱싱된 데이터를 바탕으로 대시보드를 구성하거나, 특정 이벤트(예: 높은 바운스율) 발생 시 알림을 받을 수 있도록 모니터를 설정할 수 있습니다. **실용적인 결론 및 제언** Amazon SES와 같은 관리형 서비스와 중앙 집중식 로그 분석 도구를 연동하면 이메일 인프라를 직접 운영하는 부담을 줄이면서도 운영 복잡성을 해결할 수 있습니다. 특히 비밀번호 재설정과 같이 성공률이 중요한 서비스의 경우, 단순히 '전송됨' 상태를 확인하는 것을 넘어 전체 파이프라인에 대한 실시간 알림 시스템을 구축하는 것이 고객 지원의 품질을 높이는 핵심적인 방법입니다.