クラッシュレポートのSymbolication方法
DeployGateは、ワイヤレスでクラッシュレポートを参照できるクラッシュレポート機能を提供しています。
- 内部的にはPLCrashReporterを利用しており、Appleが生成するクラッシュレポートと同様の形式で送られます。
- クラッシュレポートはクラッシュ発生時にファイルへ保存され、次回起動時に送信されます。
- 現在はsymbolication前のデータが送信されるため、お手元のMacでsymbolicationを行う必要があります。DeployGate内での自動Symbolicationは将来提供を予定しています。
symbolicatecrashの準備
symbolicatecrash
を初めて利用する場合は、まずPATHを通します。以下を ~/.bash_profile ファイルの末尾に追加します。
Xcode 7.3以降
export PATH="/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources:$PATH"
export DEVELOPER_DIR="/Applications/Xcode.app/Contents/Developer"
Xcode 6, 7
export PATH="/Applications/Xcode.app/Contents/SharedFrameworks/DTDeviceKitBase.framework/Versions/A/Resources:$PATH"
export DEVELOPER_DIR="/Applications/Xcode.app/Contents/Developer"
Xcode 5以前
export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/PrivateFrameworks/DTDeviceKitBase.framework/Versions/A/Resources:$PATH"
export DEVELOPER_DIR="/Applications/Xcode.app/Contents/Developer"
Symbolication方法
- クラッシュレポートを取得する
生成されたクラッシュレポートは次回起動時に自動で送信されます。
送信されたクラッシュレポートを各デバイスページよりダウンロードできます。
- dSYMファイルを用意する 対応するdsymファイルを探します。Organizer → Archive から対応するビルドを右クリックし「Show in Folder」で選択してください。「パッケージの内容を表示」した中の dSYMs ディクレトリにあります。
- symbolicatecrashを実行して、クラス名・メソッド名・行番号を得る
symbolicatecrashをダウンロードしたクラッシュレポート・対応するdSYMに対して実行します。
Shell
symbolicatecrash [CRASH_REPORT] [DSYM_FILE]