DevLog

엔지니어링 블로그를 한 곳에서 탐색하고, 최근 발행 흐름을 빠르게 파악할 수 있는 서비스 입니다.

Quick Links

  • Latest Feed
  • Engineering Directory

Support

  • 소개
  • 개인정보처리방침

Contribute

  • 원하는 블로그 추가 (준비 중)
  • Feedback

© 2026 DevLog Inc. All rights reserved.

본 사이트는 공개 RSS 피드를 통해 콘텐츠를 수집하며, 모든 콘텐츠의 저작권은 원저작자에게 있습니다.

Back to Feed
Read Original

Contents

Continue Reading

  • More from 당근
#Backend

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

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

Summary

"Git PR은 이제 그만!" 당근이 수백억 건의 로그를 UI로 관리하는 비결

복잡한 JSON 스키마에서 UI 기반 관리로, 데이터 기반 의사결정을 가속화하는 '이벤트센터' 개발기

당근 데이터가치화팀이 파편화된 사용자 행동 로그를 체계화하고 관리 생산성을 극대화하기 위해 구축한 전사 로그 플랫폼을 소개합니다. 단순히 로그를 쌓는 것을 넘어, 전사 네이밍 컨벤션 수립부터 멀티 플랫폼 대응 코드 생성까지 개발자 경험(DX)을 혁신한 실무 사례를 담고 있습니다.

  • 01코드 지식 없이 UI 클릭만으로 Spark StructType 스키마 및 BigQuery 뷰 자동 생성
  • 02서비스-스크린-액션 계층 구조를 통한 전사 공통 로그 네이밍 체계 확립
  • 03Swift, Kotlin, TypeScript를 지원하는 CLI로 런타임 로깅 오류 원천 차단
  • 04내부 유저 ID 기반 실시간 로그 트래킹 기능을 통한 QA 효율성 극대화
  • 05디자인 도구(Figma) 연동 및 분석 지표 자동 계산을 향한 미래 확장성 제시

+RECOMMENDATION

데이터 품질 저하와 로그 관리 복잡도로 고민하는 데이터 엔지니어 및 프론트엔드 개발자에게 필독을 권합니다. 특히 전사적 로그 컨벤션 수립과 스키마 관리 자동화 시스템을 구상 중인 팀에 실무적인 가이드라인을 제공합니다.

The Problem

기존의 사용자 행동 로그 관리는 Git 기반의 복잡한 JSON 코드로 이루어져 비엔지니어의 진입장벽이 높았으며, 일관성 없는 네이밍 컨벤션과 긴 리뷰 프로세스로 인해 운영 효율이 저하되는 문제가 있었습니다.

The Solution

서비스-스크린-액션의 3단계 계층 구조를 갖춘 전사 공통 로그 체계를 수립하고, 코드 대신 UI에서 스키마를 정의할 수 있는 관리 플랫폼 '이벤트센터'와 플랫폼별 타입을 자동 생성하는 CLI를 도입하였습니다.

The Result

로그 정의 및 리뷰 프로세스가 자동화되어 협업 비용이 절감되었으며, CLI를 통한 타입 안전한 코드 생성으로 필드 누락이나 타입 실수 같은 로깅 오류를 사전에 방지하여 데이터 품질을 높였습니다.

Trade-off

본문에 구체적인 정량 수치는 없으나, 이벤트를 추가하기 위해 다단계 입력이 필요한 사용성 문제와 UI 상태별(성공/실패 등) 개별 스크린 관리로 인한 관리 포인트 증가가 한계점으로 언급되었습니다.

03

Key Concepts

Concept · 01

이벤트 스키마 (Event Schema)

각 로그가 가지는 의미, 필드 구성, 데이터 타입을 정의한 데이터 규격입니다.

  • Spark의 StructType JSON 형식을 기반으로 로그의 구조를 정의
  • BigQuery 테이블과 동기화되어 SQL 쿼리 시 커스텀 파라미터에 직접 접근 가능하게 함
  • 로그의 오너십과 도메인 정보를 포함하여 관리 책임 소재 명확화
Concept · 02

CLI 기반 코드 생성 (Codegen)

플랫폼에 정의된 스키마를 바탕으로 각 프로그래밍 언어의 타입을 자동으로 생성해주는 도구입니다.

  • iOS(Swift), Android(Kotlin), Webview(TypeScript) 환경 지원
  • IDE 자동완성과 타입 체크를 통해 필드명 오타나 타입 불일치 방지
  • 스키마 변경 시 명령어 하나로 최신 코드를 반영하여 생산성 향상
Concept · 03

데이터 파이프라인 (Data Pipeline)

이벤트 발생부터 저장 및 정제까지 이어지는 데이터의 흐름을 처리하는 인프라입니다.

  • GCP Pub/Sub과 Dataflow를 활용한 실시간 스트리밍 처리 및 유효성 검사
  • 시간 윈도우 기반 중복 제거를 통해 데이터의 정확도 확보
  • 유효하지 않은 데이터는 DLQ(Dead Letter Queue)로 분리하여 원인 분석에 활용
Continue reading · same source

당근More from 당근

View all posts from 당근
  • 혼자 시작해 전국 오픈까지, 당근 레슨/과외 빌딩 로그

    MarketplaceProduct Market FitFunnel Optimization
    2주 전
  • 디자인시스템 팀은 디자인시스템만 잘 만들면 될까

    Design SystemAI in DesignUX Patterns
    1개월 전
  • 당근 200+개 DB 를 옮기는 ELT 플랫폼, DT Platform 을 만든 이야기

    ELTApache SparkApache Airflow
    1개월 전
  • 누구나 찾아볼 수 있는 중고거래 서버 LLM 릴리즈 노트 도입기

    LLMGitHub ActionsNotion
    2개월 전
  • How We Protect Karrot’s Internal PyPI Proxy from Supply Chain Attacks

    PyPIAWS CodeArtifactSecurity Cooldown
    2개월 전

Source

당근
당근
Engineering Blog

Published · January 8, 2026

Topics

이벤트 스키마데이터 파이프라인BigQueryType SafetyCLIGCPDX로그 시스템