Repository navigation
화면별 로깅 · 1.4.2 - #29
Merged
Merged
Conversation
GA4의 "페이지 및 화면" 보고서가 쓸모가 없었다. Firebase는 화면 전환을 자동으로 잡아주지만 그건 UIKit 뷰 컨트롤러가 뜰 때다 — 이 앱은 SwiftUI라 아무것도 안 걸린다. 9월 한 달 보고서에 잡힌 것은 `UIColorPickerViewController`(설정의 색 선택기)와 `PlatformAlertController`(알림창) 둘뿐이었고, 전체 이벤트의 81%가 화면 이름 없이 `(not set)`으로 묶였다. `screen_view`를 앱이 직접 보낸다. 이름을 우리가 지은 게 아니라 Firebase가 예약해 둔 것이다 — 이 이름과 `firebase_screen` 파라미터로 보내야 그 보고서에 들어간다. 다른 이름이면 맞춤 이벤트가 되고 보고서는 계속 빈다. 그래서 맞춤 측정기준으로 등록할 일도 없다. 세는 화면은 `Shared/AnalyticsScreen.swift`에 열거했다. **사람이 "다른 곳에 왔다"고 느끼는 자리만** 센다 — 전체를 덮는 시트와 밀려 들어오는 페이지 열하나다. 확인창과 길게 누르기 메뉴, 안내 오버레이, 달력 아래 입력창은 세지 않는다. `onAppear`이 아니라 `task`에 건다. 둘 다 "뜰 때" 불리지만 `onAppear`은 같은 화면이 다시 그려지는 과정에서 여러 번 불릴 수 있다. **기존 이벤트도 전수로 맞춰봤다.** 정의돼 있는데 안 보내는 이벤트는 없었다 (`analytics_identity`는 `Analytics.identify()` 안에서 나간다). Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
화면별 로깅만 들어갔다. 사용자 눈에는 아무 일도 일어나지 않으므로 PATCH다. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
왜
GA4의 "페이지 및 화면" 보고서가 쓸모가 없었습니다. Firebase는 화면 전환을 자동으로 잡아주지만 그건 UIKit 뷰 컨트롤러가 뜰 때라, SwiftUI인 이 앱에서는 아무것도 안 걸립니다.
9월 한 달 보고서에 잡힌 건 둘뿐이었습니다 —
UIColorPickerViewController(설정의 색 선택기)와PlatformAlertController(알림창). 시스템이 UIKit으로 띄워주는 것만 잡힌 겁니다. 전체 이벤트의 81%가 화면 이름 없이(not set)으로 묶였고, 그 보고서의 "조회수 73회"는 화면 조회수가 아니라 색 선택기와 알림창이 뜬 횟수였습니다.무엇을
screen_view를 앱이 직접 보냅니다. 이름을 우리가 지은 게 아닙니다 — Firebase 예약어라 이 이름과firebase_screen파라미터로 보내야 그 보고서에 들어갑니다. 다른 이름이면 맞춤 이벤트가 되고 보고서는 계속 빕니다. 덕분에 맞춤 측정기준으로 등록할 일도 없습니다.세는 화면은
Shared/AnalyticsScreen.swift에 열하나로 열거했습니다. 달력 홈, 하루 페이지, 설정, 캘린더 목록, 카테고리 목록, 검색, 달 고르기, 카테고리 편집, 캘린더 편집, 메모, 날짜·시간 고르기.사람이 "다른 곳에 왔다"고 느끼는 자리만 셉니다. 확인창과 길게 누르기 메뉴, 안내 오버레이, 달력 아래 입력창은 세지 않습니다 — 머물지 않거나, 이미 더 자세한 이벤트가 있거나, 화면의 일부입니다.
onAppear이 아니라task에 걸었습니다. 둘 다 "뜰 때" 불리지만onAppear은 같은 화면이 다시 그려지는 과정에서 여러 번 불릴 수 있습니다.기존 로깅 점검
정의된 이벤트 21개를 호출부와 전수로 맞춰봤습니다. 죽은 이벤트는 없습니다.
analytics_identity만 호출부가Analytics.identify()안이라 눈에 안 띄는 자리에 있습니다.겹쳐 보이는 것
screen_view(day)와day_opened는 하는 일이 다릅니다. 앞은 "하루 페이지를 얼마나 자주 보나"(다른 화면과 나란히 비교 가능), 뒤는 "어느 문으로 들어왔나"(from)입니다.docs/ANALYTICS.md에 적어뒀습니다.확인
tools/artifact_check.sh통과screen_view ["firebase_screen": "calendar"]→["firebase_screen": "day"]순으로 찍혔습니다🤖 Generated with Claude Code