T
TechInsights
목록으로
FrontEnd•2026. 01. 08.

당근의 사용자 행동 로그 관리 플랫폼: 이벤트센터 개발기

당근 마켓
당근 마켓 Engineering Team
당근 마켓

핵심요약

원문 보기

당근은 Git 기반의 복잡한 사용자 행동 로그 스키마 관리 방식을 UI 중심의 '이벤트센터' 플랫폼과 타입 안전한 코드 생성을 위한 CLI로 개선했습니다. 전사 이벤트 네이밍 컨벤션을 표준화하고, 누구나 쉽게 스키마를 정의하고 관리할 수 있도록 하여 데이터 기반 의사결정의 효율성을 높였습니다.

당근의 사용자 행동 로그 관리 플랫폼: 이벤트센터 개발기

기존 로그 관리 방식의 문제점

  • Git 기반 코드 관리: 복잡한 스키마 정의 (Spark StructType), 높은 진입 장벽.
  • 긴 리뷰 사이클: 데이터가치화팀의 리뷰/수정 반복으로 인한 시간 소요.
  • 일관성 없는 이벤트 네이밍: 다양한 표기 방식 (snake_case vs camelCase), 액션 표현 불일치.
  • 화면 이름 혼재: 팀별 다른 명칭 사용, 관리 어려움.
  • 전체 흐름: 로그 활용 전반의 느린 속도 및 비효율 발생.

해결 방향 설정

  1. 전사 공통의 일관된 사용자 행동 로그 체계 구축: 이벤트 네이밍 컨벤션 (Service-Screen-Action) 및 표준화.
  2. UI 기반 스키마 정의 플랫폼(이벤트센터) 개발: 코드 지식 없이 스키마 등록/관리 가능.
  3. 타입 안전한 코드 생성을 위한 CLI 개발: 각 플랫폼별 (iOS, Android, Webview) 타입 자동 변환.

이벤트센터 설계 및 구현

1. 전사 이벤트 체계 개편

  • 이벤트 네이밍 컨벤션: client_{action}_{service}_{screen}_{object} (snake_case, 과거형 action).
  • 계층 구조: Service → Screen → Event.

2. 이벤트센터 플랫폼

  • 서비스 관리: 전사 서비스 조회 및 분류.
  • 스크린 관리: 화면 등록 및 해당 화면 이벤트 목록 확인.
  • 사용자 행동 로그 정의: UI 기반 스키마 등록 (네이밍 컨벤션 자동 적용, Spark StructType 자동 생성, BigQuery View 자동 생성).
  • 사용자 행동 로그 QA: 본인 ID 기반 준실시간 로그 조회 및 검증.

3. CLI 기반 타입 안전 코드 생성

  • 지원 플랫폼: iOS (Swift), Android (Kotlin), Webview (TypeScript).
  • 동작 방식: Spark StructType JSON 스키마 기반 코드 자동 생성.
  • 효과: 컴파일 타임 오류 방지, IDE 자동완성 및 타입 체크 활용.

향후 과제 및 도전

  • 사용성 개선: 클릭/입력 횟수 감소, 단일 스크린 등록 한계 극복.
  • 자동화 확대: Figma 연동, 디자인 단계 이벤트 정의 및 코드 생성 자동화.
  • 분석 도구 확장: 기본 지표 자동 계산, UI 기반 실험 지표 설정 기능.

결론

이벤트센터는 여러 팀과 직군의 고민이 모여 완성된 결과물로, 로그 관리의 복잡성을 해결하고 데이터 기반 의사결정을 촉진합니다. 향후 지속적인 개선을 통해 사용자 행동 로그 활용 방식을 발전시켜 나갈 것입니다.

#FrontEnd#BigData
당근 마켓
당근 마켓

당근 마켓 Engineering Team

기술 인사이트를 전달하는 공식 채널

You might also like

View all
토스 피플 : 새로운 길을 만들 땐 내 선택을 믿는다

토스 피플 : 새로운 길을 만들 땐 내 선택을 믿는다

"이 버튼 왜 안 눌려요?" 물류 현장의 목소리로 PDA 시스템 완성하기

"이 버튼 왜 안 눌려요?" 물류 현장의 목소리로 PDA 시스템 완성하기