반응형
Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 일임형
- Algorithm
- algoritms
- JS
- 트럼프
- Ai
- programmers
- 알고리즘
- 모던자바스크립트
- 백준
- 스택
- algorithms
- MacOS
- 신한투자증권
- JavaScript
- 자료구조
- Swift
- BAEKJOON
- 자바스크립트
- IOS
- frontend
- React #Web #프런트엔드
- 로보어드바이저
- Objective-C
- dfs
- 자문형
- 큐
- BFS
- Python
- 파이썬
Archives
- Today
- Total
Step by Step
Firebase Crashlytics로 유저 에러 기록 본문
반응형
Firebase Crashlytics에 사용자 식별자(UUID) 연결하기
최근 개발한 iOS 앱(Objective-C)에 Firebase Crashlytics를 연동하면서, 특정 사용자의 에러 로그만 따로 확인하고 싶은 팀장님께서 앱에 사용자마다 고유한 UUID를 부여하고, 이 UUID로 Crashlytics 로그를 조회하라는 숙제를 내주셨다
결론적으로, 이 기능은 Firebase Crashlytics에서 지원하고 일주일동안 연결을 시켜보았다
1. Crashlytics에 사용자 ID(UUID) 설정
사용자 식별자를 설정하려면, 앱이 시작될 때 Crashlytics API를 호출하여 사용자 정보를 전달해야 함
- 헤더 파일 임포트: 먼저 AppDelegate.m 파일에 Crashlytics 헤더를 임포트
-
#import <FirebaseCrashlytics/FirebaseCrashlytics.h> - 사용자 ID 설정 코드 추가: application:didFinishLaunchingWithOptions: 메서드 안에 아래 코드를 추가하여 사용자의 고유한 UUID를 설정 UUID는 앱 설치 시점에 생성하여 NSUserDefaults 등에 저장하고, 앱 실행 시마다 저장된 UUID를 불러와서 사용하는 것이 좋습니다. 이를 통해 앱이 재시작되더라도 동일한 사용자로 인식할 수 있다
-
// 앱이 시작될 때 호출되는 메서드 (AppDelegate.m) - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // ... 다른 초기화 코드 ... // 사용자 식별자(UUID) 생성 또는 불러오기 NSString *userUUID = [[NSUUID UUID] UUIDString]; // Crashlytics에 사용자 ID를 설정 [[FIRCrashlytics crashlytics] setUserID:userUUID]; // ... 다른 초기화 코드 ... return YES; }
2. Firebase 대시보드에서 UUID로 에러 로그 조회
위 코드로 사용자 UUID를 설정하면, Firebase Console의 Crashlytics 대시보드에서 해당 UUID를 활용하여 충돌 보고서를 필터링이 가능하다
- Firebase Console에 접속하여 프로젝트를 선택
- 왼쪽 메뉴에서 Crashlytics를 클릭
- 충돌 보고서 목록 상단에 있는 필터 기능을 사용
- User 필터에 설정한 userUUID 값을 입력하면, 해당 사용자의 충돌 보고서만 조회
3. 추가 팁: 로그 및 사용자 정의 키 활용
사용자 식별자 외에 디버깅에 도움이 되는 다른 정보들도 Crashlytics에 기록할 수 있다
- 행동 로그 기록: 사용자의 특정 행동을 기록하여 충돌 직전 상황을 파악
-
Objective-C
[[FIRCrashlytics crashlytics] log:@"'결제하기' 버튼 탭"]; - 사용자 정의 키-값 쌍 기록: 앱의 특정 상태(예: 로그인 여부, A/B 테스트 그룹)를 기록
-
Objective-C
[[FIRCrashlytics crashlytics] setCustomValue:@(YES) forKey:@"isLoggedIn"]; [[FIRCrashlytics crashlytics] setCustomValue:@"premium" forKey:@"userPlan"];
반응형
'ios 앱 개발' 카테고리의 다른 글
| iOS 앱을 다이나믹 아일랜드에 연동하는 방법 (Live Activities 활용) (8) | 2025.08.17 |
|---|---|
| iOS 앱과 Firebase Crashlytics 연결하기 (4) | 2025.07.29 |
| MTS 내 인사이더(A/B Test) 적용 (12) | 2025.07.16 |
| APNs(Apple Push Notification Service) 정리 (2) | 2025.07.15 |
| Objective-C 기본 개념 (3) | 2025.04.21 |