Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Firebase Crashlytics 모듈 추가 및 내부 이벤트 반영 코드 추가 #727

Merged
merged 4 commits into from
Dec 20, 2024

Conversation

Do-hyun-Kim
Copy link
Collaborator

🔵PR을 올리기 전 아래 사항을 확인해주세요.

  • 구현한 로직과 기능이 올바르게 작동되는지 충분히 테스트해주세요.
  • 코드의 성능이나 메모리 효율성이 적절하게 고려되었는지, 불필요한 코드가 없는지 검토해주세요.
  • 이번 PR에서 구현된 주요 기능이나 해결된 문제에 대해 자세히 서술해주세요.
    (위 내용은 지워주세요)

😽 Firebase Crashlytics를 사용해서 Error 로깅 작업 해요

  • Crash 전용BBCrashError Type 추가
  • BBEventAnalyticsLog Enum Type 추가
  • BBLogManager Enum Type 추가 및 내부 로그 이벤트 메서드 추가
  • Firebase에 dsym을 업로드하기 위해 TargetScript+Template 추가 및 Firebase script 정의

🛠️ Firebase Crashlytics dsym 업로드

${BASE_PATH}/Tuist/.build/checkouts/firebase-ios-sdk/Crashlytics/run
스크린샷 2024-12-19 오후 9 43 42

해당 경로에 있는 run을 실행하도록 하여 dsym 파일을 자동으로 업로드 하도록 하였습니다.

Firebase Analytics 로그 이벤트 추가

  • 각 화면마다 로그 이벤트를 추가하여 사용자 이벤트 트레킹하도록 하였습니다.

🟡차후 계획 (Crash Error 발생하는 코드에 코드 넣어주세요)

  • Crash Error 발생하는 코드에 BBLogManger 코드를 넣어 에러 확인 할 수 있도록 해주세요 Are you Okay?

✅테스트 케이스

  • Firebase Crashlytics에 dsym 파일이 업로드 되는지 확인해요
  • Frebase Analytics에 이벤트 트래킹이 되는지 확인해요

🙏🏻아래와 같이 PR을 리뷰해주세요.

  • PR 내용이 부족하다면 보충 요청해주세요.
  • 코드 스타일이 팀의 규칙에 맞게 작성되었는지, 일관성을 유지하고 있는지 확인해주세요.
  • 코드에 대한 문서화나 주석이 필요한 부분에 적절하게 작성되어 있는지 확인해주세요.
  • 구현된 로직이 효율적이고 올바르게 작성되었는지, 아키텍처를 잘 준수하고 있는지 검토해주세요.
  • 네이밍, 포매팅, 주석 등 코드의 일관성이 유지되고 있는지 확인해주세요.

…tAnalyticsLog, BBLogManager 추가

- Tuist TuistScript+Templates dsym Upload를 하기 위한 Script 파일 추가
- 각 ViewController에 Analytics Event log 메서드 추가
- Crashlytics Log Method 추가
@Do-hyun-Kim Do-hyun-Kim requested a review from akrudal December 19, 2024 12:48
@Do-hyun-Kim Do-hyun-Kim self-assigned this Dec 19, 2024
akrudal
akrudal previously approved these changes Dec 20, 2024
Copy link
Collaborator

@akrudal akrudal left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

오우.. 어케했뉴?!

@@ -29,9 +29,11 @@ final class CameraDisplayNavigator: CameraDisplayNavigatorProtocol {
func showErrorAlert() {
let confirmHandler: BBAlertActionHandler = { [weak self] alert in
self?.toCamera()
BBLogManager.analytics(logType: BBEventAnalyticsLog.clickCameraButton(entry: .failedAlertConfirm))
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

얘네는 analytics에 넣는 이유가 몬가요

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

생각해 보니깐 에러 발생했는데 analytics로 이벤트 트래킹 처리할 필요는 없을 것 같네요 :)

@@ -147,6 +152,7 @@ final class FamilyNameSettingViewController: BBNavigationViewController<FamilyNa

groupConfirmButton.rx
.tap
.do { _ in BBLogManager.analytics(logType: BBEventAnalyticsLog.clickFamilyButton(entry: .familyNameSetting))}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

얘네들 viewcontroller에서 do로 받아서 처리하는 것보다 뷰모델에 넣는게 낫지 않을까여?🫨

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ㅇㅎ 화긴염 💯

@@ -44,6 +44,7 @@ public final class PrivacyViewController: BaseViewController<PrivacyViewReactor>
//MARK: Configure
public override func setupUI() {
super.setupUI()
BBLogManager.analytics(logType: BBEventAnalyticsLog.viewPage(pageName: .setting))
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

이거는 왜 뷰디드로드에 안넣구...?!여기에 잇져?!

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

오우 쉿 테스트 용으로 한거 안지웠나봐용

@Do-hyun-Kim Do-hyun-Kim merged commit 6c4b282 into develop Dec 20, 2024
@Do-hyun-Kim Do-hyun-Kim deleted the feat/#723-add-firebase-crashlytics-module branch December 20, 2024 08:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants