공부방/iOS

Using iOS crashlytics method (crashlytics 함수 사용법)

soycrab 2019. 7. 12. 15:07

Crashlytics custom error 를 만들어 보겠습니다. 

먼저 같이 사용하면 좋은 유용한 Crashlytics Method를 정리해 보겠습니다. 

 

1. User Info 

 

Crashlytics.sharedInstance().setUserIdentifier("123456789")

Crashlytics.sharedInstance().setUserEmail("person@domain.com")

Crashlytics.sharedInstance().setUserName("Awesome AppUser")

User Info 를 설정하는  Method 입니다. 

위 처럼 설정하면 

에러 이벤트 발생시 User Info 가 포함되어 보여집니다.

 

그림 1

Crashlytics 에 그림 1과  같이 User의 정보가 노출 됩니다.

 

2. CLSLogv 

CLSLogv("Log awesomeness %d %d %@", getVaList([1, 2, "three"]))

로그를 남기고 싶을때 사용하며 위처럼 호출하면 에러 이벤트 발생시

 

 

그림 2 

그림 2처럼 로그를 남길수 있습니다.

 

3. setValue

직접 Value 를 설정해 줄수도 있습니다. 

Crashlytics.sharedInstance().setObjectValue(Defaults[.fcm_token], forKey: "fcm_token")

처럼 사용하면  에러 발생시 그림3 처럼 key : value 형태로 저장이 가능 합니다. 

 

그림 3

추가로 

setIntValue, 

setBoolValue ..... 등이 있습니다. 

 

 

4. Custom Error 

Custom Error 를 생성하면 Non-fatals 에 Event 가 잡히게 되며, 

생성하는 방법은 아래와 같습니다. 

 

        let userInfo = [

            NSLocalizedDescriptionKey: NSLocalizedString("AppTerminate", comment: ""),

            NSLocalizedFailureReasonErrorKey: NSLocalizedString("AppTerminate ReasonError", comment: ""),

            NSLocalizedRecoverySuggestionErrorKey: NSLocalizedString("Is this error should be fixed?", comment: ""),

            "AppTerminate" : NSLocalizedString("Appterminate", comment: "")

        ]

        

        let e = NSError(domain: "applicationWillTerminate", code: 1000, userInfo: userInfo)

 

userInfo 부분과 code 는  그림 4와 같이 노출 되며, 

 

그림 4

 NSError(domain: "applicationWillTerminate", code: 1000, userInfo: userInfo)

applicationWillTerminate  

부분은 그림 5에 적용이 됩니다. 

 

그림 5

 

 

 

 

참고 : https://docs.fabric.io/apple/crashlytics/enhanced-reports.html

반응형