
봇 필터링부터 커스텀 SDK 래퍼 제작까지, 마이크로 프론트엔드 환경에서 RUM 비용을 극적으로 줄인 실전 엔지니어링 가이드
사용자 경험(UX) 개선을 위해 Datadog RUM을 도입하고 싶지만 무지막지한 비용 때문에 망설여지시나요? 아임웹 프론트엔드 팀이 60여 개의 마이크로 프론트엔드 환경에서 직면한 비용 한계를 어떻게 기술적으로 극복했는지 생생한 여정을 소개합니다. 봇 차단, 세션 지연 초기화, 그리고 가성비 넘치는 세션 리플레이 대체 기법까지 실무에 바로 적용할 수 있는 비용 최적화 꿀팁을 아낌없이 담았습니다.
RUM 도입을 고민하고 있으나 비용 예측이 어려워 주저하는 조직이나, 마이크로 프론트엔드/멀티 도메인 환경에서 일관된 클라이언트 모니터링 체계를 구축하려는 프론트엔드 엔지니어들에게 강력히 추천합니다.
아임웹 프론트엔드 챕터는 사용자 여정 단위의 모니터링을 위해 Datadog RUM 도입을 추진했으나, 60여 개의 마이크로 프론트엔드 앱 관리 이슈와 세션 수 기반의 과금 모델로 인한 급격한 비용 상승 우려에 직면했습니다. 특히 무의미하게 세션을 소모하는 대량의 봇 트래픽과 이탈율이 높은 단순 단순 방문자 세션으로 인해 정밀한 필터링이 요구되었습니다.
User Agent 시그니처 및 10가지 이상의 환경 시그널을 검사하는 정교한 봇 필터링을 구축하고, 10초 대기 또는 10회 이상 액션 발생 시에만 세션을 활성화하는 지연 초기화 기법을 도입했습니다. 또한 마이크로 프론트엔드 간의 일관된 세션 및 이벤트 전송을 위해 자체 SDK 래퍼 패키지를 제작하고, 비싼 Session Replay 기능을 텍스트 기반의 대화형 요소 액션 추적 방식으로 완벽히 대체했습니다.
정교한 봇 차단과 의미 있는 세션 선별 정책을 적용한 결과 전체 수집 세션 수를 약 90% 감소시켰으며, 값비싼 Session Replay를 비활성화함으로써 비용을 90% 이상 대폭 절감하고 수집 세션의 전반적인 데이터 품질을 극대화했습니다.
Trade-off
의미 있는 세션 획득을 위해 초기화 시점을 지연시키고 액션 수 제한을 걸었기 때문에, 초반 10초 이내에 발생하는 극소수의 이탈 상황이나 초기 에러 로그는 유실될 우려가 있습니다. 또한 동영상 방식의 시각적 Session Replay 기능을 배제하고 텍스트 기반 액션 로그로 대체했기 때문에, 직관적인 유저 화면 복원성 면에서는 다소 타협이 필요했습니다.
실제 사용자의 브라우저에서 성능, 에러, 유저 행동 데이터를 세션 단위로 수집하고 관측하는 모니터링 서비스입니다.
대규모 웹 애플리케이션을 독립적으로 개발, 테스트, 배포할 수 있는 여러 개의 작은 서브 애플리케이션으로 분할하는 아키텍처입니다.
고비용의 동영상 세션 녹화 방식 대신, 사용자가 클릭한 대화형 요소들의 접근성 속성 및 식별자를 텍스트 흐름으로 자동 수집하여 유저 행동을 재현하는 가성비 솔루션입니다.