[Feat] Firebase Analytics 지표 유실을 바로잡고 기능별 수요와 사용 방식을 남긴다 - #277
Merged
Merged
Conversation
… 상세 더보기가 한 번도 콘솔에 들어가지 않았다, Firebase 는 규칙을 어긴 이름을 에러 없이 버려서 앱에서는 몰랐다, 코드에 적힌 이벤트 이름이 길이와 문자 규칙을 지키는지 소스를 훑는 테스트를 더했다 (#275)
…이벤트가 없어서 오답노트를 쓴 사람 수가 한 장씩 등록한 사람만 셌다, 몇 장을 올렸는지는 mode 와 count 로 가른다, 테마는 색 이름을 이벤트 이름에 붙여 색마다 이벤트가 따로 생겼고 주요 이벤트로 걸어 둔 theme_color_change 에는 하나도 안 잡혔다 (#275)
…sObserver 가 하위 화면을 하나도 못 남겼다, 들어오는 경로가 여러 곳이라 이동마다 이름을 다는 대신 문제 상세, 작성과 수정, 다중 등록, 복습 인증, 복습 세트, 복습 완료, 복습 추천 화면이 initState 에서 한 번 남긴다, Firebase 프로젝트가 하나라 개발 서버 빌드와 디버그 실행도 운영 통계에 섞여서 Sentry 가 production 으로 치는 빌드만 보내게 했다 (#275)
…서 직접 부르다 보니 bool 파라미터나 100자 넘는 값처럼 Firebase 가 받지 않는 값이 섞여도 막을 곳이 없었다, 예외를 삼키고 값을 정리해서 보낸다, 가입 판단과 기기 설정용 유저 속성도 여기에 둔다, 이벤트 이름 검사가 이 헬퍼로 보내는 이름도 보게 했다 (#275)
… 받기 전에 남아서 실패한 로그인도 셌다, 끝까지 성공한 뒤에 남기고 계정이 방금 만들어졌으면 sign_up 도 남긴다, 게스트는 로그아웃이 곧 계정 삭제라 user_delete 에 trigger 를 붙여 직접 탈퇴와 가른다, 로그인 버튼을 누른 것과 실패, 로그아웃, 첫 화면에서 서버에 닿지 못한 것도 남긴다 (#275)
…기고, 입어 본 것과 저장해서 실제로 입은 것을 가른다, 같은 색을 다시 적용한 것은 테마 변경으로 세지 않고 지금 쓰는 테마는 유저 속성으로 둔다, 미션 보상 받기와 레벨업, 치장 해금, 훈장 획득, 성취 카드 공유 결과도 남긴다 (#275)
… 기분, 개선 유형, 캔버스 사용 여부를 붙인다, 필기 캔버스는 한 번 푼 동안 쓴 도구와 스타일러스를 모아 제출하거나 나갈 때 한 번 남긴다, AI 추천 태그를 받아들이는지와 분석 결과, 검색, 이미지를 실제로 받은 장수, 촬영과 문서 스캔, 세트 시작과 삭제를 더했다, 삭제와 폴더 이동은 요청 전이 아니라 성공한 뒤에 남긴다 (#275)
…남긴다, FCM 이 자동으로 남기는 notification_open 은 콘솔에서 보낸 알림만 센다, 스터디룸 탭과 나가기, 챌린지 종류, 반응 이모지, 댓글 수정과 삭제, 공지를 어떻게 닫는지, 복습 알림 설정 변경을 더했다, 홈이 뜰 때 한 번 남아 앱을 켠 횟수와 같던 study_room_list_view 는 뺐다 (#275)
…ew 를 빠뜨리면 그 화면은 콘솔에 보이지 않는다, 하단 탭처럼 일부러 빼는 화면은 이유와 함께 적어 두고 지워진 화면이 목록에 남으면 실패한다 (#275)
…벤트 전체, 유저 속성, 화면 이름, 콘솔에 등록할 것, 궁금한 것별로 볼 이벤트를 한곳에 모았다, docs 는 커밋하지 않지만 코드 주석과 CLAUDE.md 가 가리키는 참고표라 따로 넣는다 (#275)
Merged
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.
✔️ 연관 이슈
📝 작업 내용
Firebase Analytics 에 들어오던 지표가 일부는 버려지고 일부는 실패까지 세고 있어서, 새 기능과 개선을 판단할 수 있는 지표를 새 기능 말고는 다시 손대지 않아도 되게 한 번에 정리했습니다.
(not set)으로만 잡혔습니다. 화면 42개 중 운영에서 열리는 화면은 전부 이름으로 남고, 빠뜨리면 테스트가 실패합니다.production으로 치는 빌드(릴리즈 +ENV=prod)만 보냅니다.전체 목록과 콘솔 설정은
docs/애널리틱스 지표/이벤트 목록.md에 있습니다.1. 새 이벤트는
AppAnalytics.logEvent하나로 보냅니다source,mode,result,count같은 이름을 여러 이벤트가 같이 씁니다. 사전은 문서 2절에 있습니다.2. 누른 순간이 아니라 끝난 순간을 셉니다
loginsign_up도 남김user_deletetrigger로withdraw와guest_logout을 가름problem_delete,folder_move,problem_path_edittheme_color_change_to_색이름theme_color_change하나에color파라미터study_room_list_view3. 화면 조회는 이동하는 쪽이 아니라 화면이 남깁니다
initState에서 한 번 남깁니다.sign_up,problem_created,problem_repeat,practice_session_completed), 맞춤 측정기준 등록, 이벤트 보관 기간 14개월. 측정기준은 등록한 날부터 쌓여서 4.1.0 출시 전에 해 두는 게 좋을 것 같습니다. 목록은 문서 6절에 있습니다.login,problem_delete,folder_move,problem_path_edit,user_delete는 이번 버전부터 실패와 게스트 로그아웃이 빠져서 전 버전보다 적게 나옵니다.ENV=prod릴리즈 빌드가 필요합니다. 네이티브 SDK 가 앱 시작 직후 보내는 자동 이벤트는 차단 설정보다 먼저 나갈 수 있습니다.🙏 전달사항
createdAt이 10분 안이면 가입으로 봅니다. 정확하게 하려면 백엔드 응답에 필드가 필요합니다.flutter analyzeerror 0, warning 0 (develop 대비 새 info 없음),flutter test2153개 통과, 57개 skip, 실패 0. 실제 기기에서 콘솔에 들어오는지는 아직 확인하지 못했습니다.