📊

Kibana 대시보드 가이드

이터널 리턴 데이터 분석을 위한 대시보드 구축 및 관리 가이드

1
구축 완료
3
진행 중
5+
추천 대시보드

⚠️ 현재 이슈

📋 대시보드 현황

✅ 신규 유저 온보딩 대시보드

상태: 구축 완료

시각화: 신규 가입자 추이, 국가별 분포, 튜토리얼 스킵 현황, 단계별 완료 유저 수, PC방 비율, 언어별 분포

인사이트: 튜토리얼 스킵률 ~47%, 첫 게임 진입률 51.6%, D1 리텐션 16.8%

🔄 추가 예정 (Transform 권한 필요)

  • 첫 게임 진입률 시계열
  • D1/D7 리텐션 추이
  • 시간대별 가입 히트맵

💡 추천 대시보드

🎮 1. 캐릭터 밸런스 대시보드

인덱스: battle-user-game-release-log

시각화:

  • 캐릭터별 픽률 (characterNum)
  • 캐릭터별 평균 순위 (gameRank)
  • 캐릭터별 킬/데스 비율
  • 무기 조합별 성과
  • 시간대별 메타 변화

활용: 패치 전후 밸런스 변화 추적, 핫픽스 필요 캐릭터 식별

🌐 2. 서버 성능 대시보드

인덱스: battle_latency_*, battle-user-game-release-log (avgLatency)

시각화:

  • 지역별 평균 레이턴시
  • 시간대별 레이턴시 추이
  • 레이턴시 분포 히스토그램
  • 고레이턴시 유저 비율 알림

활용: 서버 이슈 조기 감지, 지역별 인프라 개선 우선순위

💰 3. 경제 시스템 대시보드

인덱스: battle-user-game-release-log (creditSource, crGet*, crUse*)

시각화:

  • 크레딧 획득/소비 밸런스
  • 획득 소스별 비율 (몬스터, 드론, 가이드로봇 등)
  • 소비 카테고리별 비율
  • 게임 모드별 경제 차이

활용: 인게임 경제 밸런싱, 콘텐츠 가치 평가

📈 4. 매치메이킹 품질 대시보드

인덱스: battle-user-game-release-log (beforeNormalTeamMmr, preMade)

시각화:

  • MMR 분포 히스토그램
  • 매치 내 MMR 편차
  • 프리메이드 vs 솔로 비율
  • 매칭 대기시간 추이 (별도 로그 필요)

활용: 매칭 품질 모니터링, 랭크 시스템 개선

🏆 5. 게임 모드별 현황 대시보드

인덱스: battle-user-game-release-log (gameMode, gameModeSub)

시각화:

  • 게임 모드별 플레이 비율
  • 시간대별 모드 선호도 변화
  • 모드별 평균 게임 시간 (duration)
  • 모드별 이탈률 (giveUp)

활용: 콘텐츠 인기도 파악, 이벤트 모드 효과 측정

🚨 6. 이상 행위 탐지 대시보드

인덱스: battle-user-game-release-log (hackAttemptLog, afk)

시각화:

  • 핵 시도 유형별 빈도
  • AFK 비율 추이
  • 비정상 플레이 패턴 (극단적 스탯)
  • 의심 유저 리스트

활용: 치터 조기 탐지, 제재 우선순위 결정

🎯 개요

이터널 리턴의 다양한 게임 데이터를 Kibana로 시각화하여 의사결정에 활용합니다. 이 가이드는 대시보드 구축 방법과 주요 인사이트를 문서화합니다.

💡 현재까지 발견한 인사이트

  • 튜토리얼 스킵률 ~47% - 거의 절반의 신규 유저가 스킵
  • 첫 게임 진입률 51.6% - 가입자 절반만 게임 플레이
  • D1 리텐션 16.8% - 다음 날 복귀율 낮음
  • 피크 타임: 금요일 20-23시 - 주말 저녁이 최대 유입

🗄️ 데이터 인덱스 구조

1. new-user-release-log 신규 가입

유저가 계정을 생성할 때 기록되는 로그입니다.

필드 타입 설명
userNum number 유저 고유 번호
authProvider keyword 인증 제공자 (Steam, Kakao 등)
country keyword 국가 코드 (KR, US, JP 등)
language keyword 클라이언트 언어
pcCafe boolean PC방 여부
@timestamp date 가입 시각

2. tutorial-release-log 튜토리얼

튜토리얼 진행 상태가 기록되는 로그입니다.

필드 타입 설명
userNum number 유저 고유 번호
code number 튜토리얼 단계 (10001~10006)
skip boolean 스킵 여부
clearDtm date 클리어 시각
rewardDtm date 보상 수령 시각

📝 튜토리얼 코드 매핑

  • 10001 - 기본 조작
  • 10002 - 아이템 획득
  • 10003 - 전투 기초
  • 10004 - 스킬 사용
  • 10005 - 제작 시스템
  • 10006 - 최종 테스트

📈 시각화 구성

대시보드는 4개의 시각화로 구성됩니다.

📊 1. 신규 가입자 추이

타입: Date Histogram (Line Chart)

인덱스: new-user-release-log

설정: X축 - @timestamp (3시간 간격), Y축 - Count

용도: 시간대별 가입 패턴 파악, 이벤트/마케팅 효과 측정

🌍 2. 국가별 신규 유저 Top 5

타입: Pie Chart

인덱스: new-user-release-log

설정: Split Slices by country.keyword, Top 5 by Count

용도: 주요 유입 국가 파악, 지역별 마케팅 전략 수립

⏭️ 3. 튜토리얼 스킵 현황

타입: Bar Chart (Horizontal)

인덱스: tutorial-release-log

설정: Split by code, Sub-split by skip (true/false)

용도: 어느 단계에서 스킵이 많은지 파악

✅ 4. 튜토리얼 단계별 완료 유저 수

타입: Vertical Bar Chart

인덱스: tutorial-release-log

설정: Split by code, Metric - Unique Count of userNum

핵심: 단순 Count가 아닌 Unique Count로 중복 제거

⚠️ 주의: Count vs Unique Count

한 유저가 여러 번 튜토리얼을 시도하면 Count는 부풀려집니다. 실제 완료 유저 수를 보려면 반드시 Unique Count of userNum을 사용하세요.

🛠️ 대시보드 생성 단계

1

Index Pattern 생성

Stack Management → Index Patterns → Create index pattern

new-user-release-logtutorial-release-log 각각 생성

2

Discover에서 데이터 확인

각 인덱스의 필드 구조와 샘플 데이터 확인

시간 범위가 적절한지 체크 (Last 7 days 권장)

3

시각화 생성

Visualize → Create visualization

4개 시각화를 각각 생성하고 저장

4

대시보드 조립

Dashboard → Create dashboard

저장된 시각화들을 추가하고 레이아웃 배치

5

시간 필터 설정

기본 시간 범위를 Last 7 days로 설정

대시보드 저장 시 "Store time with dashboard" 체크

🔍 유용한 필터/쿼리

특정 국가만 보기

country.keyword: "KR"

스킵한 유저만 보기

skip: true

특정 튜토리얼 단계만

code: 10001

PC방 유저만

pcCafe: true

💡 팁: 필터 저장

자주 사용하는 필터 조합은 대시보드에 저장해두면 편리합니다. 국가별/플랫폼별 뷰를 쉽게 전환할 수 있어요.

🔬 고급 분석 결과

Python 스크립트로 new-user-release-logbattle-user-game-release-log를 조인 분석한 결과입니다. (최근 7일 기준)

🎮 첫 게임 진입률

신규 가입자2,197명
게임 플레이 유저1,134명
첫 게임 진입률51.6%
1시간 내 첫 게임68.4%
24시간 내 첫 게임98.9%

💡 게임 플레이 유저의 약 70%는 가입 후 1시간 이내에 첫 게임을 시작합니다.

📈 D1/D7 리텐션

D1 리텐션16.8% (186/1,105명)
D7 리텐션측정 대기 중

💡 가입 다음 날에도 플레이하는 유저는 약 17%입니다.

⏰ 시간대별 가입 피크

1위금요일 20:00 (76명)
2위목요일 15:00 (75명)
3위금요일 21:00 (73명)
4위금요일 23:00 (73명)
5위목요일 21:00 (72명)

💡 금요일 저녁~밤 시간대가 신규 유저 유입 피크 타임입니다.

🐍 분석 스크립트

이 분석은 Python 스크립트로 수행되었습니다. Kibana Transform 권한이 있다면 자동화할 수 있습니다.

# calculate_onboarding_metrics.py
# Kibana bsearch API로 두 인덱스를 조인 분석
python3 calculate_onboarding_metrics.py

🚀 확장 아이디어

결론

이 대시보드로 신규 유저 유입과 온보딩 품질을 실시간으로 모니터링할 수 있습니다. 특히 튜토리얼 스킵률 47%라는 인사이트는 온보딩 경험 개선의 중요한 시작점이 됩니다.

데이터 기반 의사결정의 첫 걸음! 🎮📊