1. 程式人生 > >iOS Crash日誌收集與解析

iOS Crash日誌收集與解析

Crash日誌收集與解析

一、本地crash日誌收集

1、 把發生crash的裝置連線到你的電腦上,用 iTunes 或 itools

Mac OS X:~/Library/Logs/CrashReporter/MobileDevice

Windows 7/Vista:
C:\Users\計算機登入名\AppData\Roaming\Apple Computer\Logs\CrashReporter\MobileDevice

2、或者 開啟itools,在你的裝置下,找到“高階功能”,點選“崩潰日誌”,然後將需要的日誌匯出到電腦裡面就可以了!

3、還可以支援從 Xcode -> Window -> Devices -> 相應的裝置 -> View Device Logs ->

二、線上crash日誌收集

1、��線上bug收集,Xcode -> Window –> Organzer–> Crashs –> 選擇相應版本的,就可以看到crash日誌,不過,這個日誌收集是有延遲。但是 收集crash功能需要使用者設定->隱私->診斷與用量->診斷與用量資料(iOS8一下在通用中設定) 選擇自動傳送,並與開發者共享即可;所以不推薦用。

2、第二種就是自己根據收集 Crash 日誌,上傳到伺服器 ,可參考第三方框架 如 KSCrash,plcrashreporter,CrashKit 等。

3、使用第三方工具收集Crash日誌,如Crashlytics,Hockeyapp ,友盟,Bugly 等等。

三、crash日誌解析

1、一般的情況,線上和本地獲取的crash日誌,都是已經被解析過的。能很明顯的定位到具體的crash 原因。

2、但是有些情況,獲取的日誌是十六進位制的日誌,完全是讀不懂什麼的。這時候就需要自己去使用symbolicatecrash解析或者使用 命令列工具atos去解析。

symbolicatecrash解析crash日誌

1、找到你之前打包上線 .dSYM 和 二進位制檔案,及app 的 .crash 檔案。

2、在桌面新建一個資料夾,然後把三者放在一塊,

3、使用終端 cd 開啟之前你建立的檔案,雙擊開啟 .crash 檔案,檢視crash資訊 執行終端:
Here is the code:

* in Xcode find symbolicatecrash   
$ cd /Applications/Xcode.app/
* #找到 symbolicatecrash 地址 
$ find . -name symbolicatecrash 

$ export DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer

$ /Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash appName.crash appName.app > appName.log

4、雙擊 appName.log 控制檯上就可以檢視被解析出來的 crash 日誌。

atos解析crash日誌

atos 命令解析日誌,不再詳解,可以參考一下文章連結內的內容。
開啟終端:

* in atos  備註 

* kkkk

xcrun atos -arch armv7 -o AskDr.app/AskDr 0x00144c00 0xfe000 + 289792

文章引用