クラッシュレポートのSymbolication方法

DeployGateは、ワイヤレスでクラッシュレポートを参照できるクラッシュレポート機能を提供しています。

  • 内部的にはPLCrashReporterを利用しており、Appleが生成するクラッシュレポートと同様の形式で送られます。
  • クラッシュレポートはクラッシュ発生時にファイルへ保存され、次回起動時に送信されます。
  • 現在はsymbolication前のデータが送信されるため、お手元のMacでsymbolicationを行う必要があります。DeployGate内での自動Symbolicationは将来提供を予定しています。

symbolicatecrashの準備

symbolicatecrash を初めて利用する場合は、まずPATHを通します。以下を ~/.bash_profile ファイルの末尾に追加します。

export PATH="/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources:$PATH"
export DEVELOPER_DIR="/Applications/Xcode.app/Contents/Developer"
export PATH="/Applications/Xcode.app/Contents/SharedFrameworks/DTDeviceKitBase.framework/Versions/A/Resources:$PATH"
export DEVELOPER_DIR="/Applications/Xcode.app/Contents/Developer"
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方法

  1. クラッシュレポートを取得する

生成されたクラッシュレポートは次回起動時に自動で送信されます。

送信されたクラッシュレポートを各デバイスページよりダウンロードできます。

  1. dSYMファイルを用意する

対応するdsymファイルを探します。Organizer → Archive から対応するビルドを右クリックし「Show in Folder」で選択してください。「パッケージの内容を表示」した中の dSYMs ディクレトリにあります。

  1. symbolicatecrashを実行して、クラス名・メソッド名・行番号を得る

symbolicatecrash をダウンロードしたクラッシュレポート・対応するdSYMに対して実行します。

symbolicatecrash [CRASH_REPORT] [DSYM_FILE]