# シンボルファイルのアップロード

> Manually upload application symbol files to improve crash report symbolication and readability.

ネイティブクラッシュレポートに欠落しているシンボルがある場合があります。プロジェクトに欠落しているシンボルがある場合は、アプリケーションシンボルファイルをプロジェクトに手動で追加できます。これは、問題をより適切に診断して修正するのに役立ちます。

クラッシュと例外のレポートに欠落しているシンボルがある場合は、Cloud Diagnostics ダッシュボードからアプリケーションシンボルファイルを追加します。


**Frame:**
![](/api/media?file=/cloud-diagnostics/media/images/debugging-symbolspageemptystate.png)

シンボルをアップロードするには、以下を行います。

1. [Unity Dashboard](https://dashboard.unity3d.com/) を開きます。
2. Cloud Diagnostics が有効になっているプロジェクトを選択します。
3. 左のナビゲーションから、**Cloud Diagnostics** > **Debugging Symbols** (デバッグシンボル) を選択します。
4. Debugging Symbols (デバッグシンボル) ページから、**Upload symbols** (シンボルをアップロード) を選択し、コンピューターからファイルを選択します。

新しいシンボルをアップロードする際は、アップロードしてから利用可能になるまでに少し間があります。5 分以上待ってから新しいクラッシュを送信してください。処理が完了すると、新しいレポートが適切なシンボル化を使用して生成されるはずです。

## 欠落している iOS/OSX アプリケーションシンボルの検出とアップロード##finding-and-uploading-missing-iososx-application-symbols

Xcode を使用してアプリケーションをビルドすると、iOS/OSX は以下のような名前の dSYM フォルダーにシンボルを配置します。

```cpp
~/Library/Developer/Xcode/DerivedData/<build id>;/Build/Products/<build type>/appname.dSYM
```

dSYM ファイルは、アプリケーションの DWARF (属性付きレコード形式でのデバッグ) デバッグ情報を含む ELF ファイルです。DWARF は、ソースレベルのデバッグをサポートするデバッグファイル形式です。

dSYM に正しい UUID が含まれていることを確認するには、`dwarfdump` コマンドを実行し、`appname` をアプリケーションの dSYM の名前で置き換えます。

```cpp
dwarfdump -u appname.dSYM/Contents/Resources/DWARF/appname
```

以下に、`dwarfdump` からの出力サンプルを示します。

`UUID: 5EEDCCD2-38E7-3E52-81EC-B90C7BCD6D91 (armv7) appname.dSYM/Contents/Resources/DWARF/appname`

`UUID: 583173FD-6697-3E3C-90DC-EA9147563A5B (arm64) appname.dSYM/Contents/Resources/DWARF/appname`

\*\*ノート: \*\*dwarfdump は、人が読める形式で DWARF 情報を出力するアプリケーションです。dwarfdump の出力では、UUID が大文字とダッシュでレポートされます。多くの場合、UUID はダッシュなしですべて小文字で表示されます。どちらの形式でも UUID を表すことができます。例えば、`5EEDCCD2-38E7-3E52-81EC-B90C7BCD6D91` と `5eedccd238e73e5281ecb90c7bcd6d91` は同じ UUID を表します。

正しい dSYM フォルダーを見つけたら、フォルダー全体を圧縮し、Unity Dashboard の **Debugging Symbols** (デバッグシンボル) タブを使用して Cloud Diagnostics サービスにアップロードします。

## iOS、Bitcode、App Store##ios-bitcode-and-the-app-store

Bitcode が有効な iOS アプリをビルドして App Store に提出すると、Apple はビルドのポストプロセスを実行し、新しいバイナリを作成します。新しいバイナリには、新しい UUID と、対応する新しい dSYM があります。この場合、iTunes Connect から dSYM をダウンロードする必要があります。これは、iTunes Connect の **My Apps** > **Activity** > **All Builds** > **(ビルドを選択)** から入手できます。

アプリケーションを App Store にアップロードする際に、**Include bitcode for iOS content** と **Upload your app’s symbols to receive symbolicated reports from Apple** をオンにすると、App Store が正しいシンボルを使用して新しい dSYM を生成できるようになります。

新しい dSYM をダウンロードしたら、dwarfdump を使用して UUID が正しいことを確認します。ファイルを圧縮し、**Debugging Symbols** (デバッグシンボル) タブから Cloud Diagnostics サービスにアップロードします。

シンボル化の詳細については、Apple Developer ウェブサイトの [クラッシュレポートのシンボル化](https://developer.apple.com/library/content/technotes/tn2151/_index.html#//apple_ref/doc/uid/DTS40008184-CH1-SYMBOLICATION) に関する記事を参照してください。

\*\*ノート: \*\*新しい dSYM lD をアップロードするときに、レポートは再シンボル化されません。新しいシンボルを使用するレポートを生成するには、新しいクラッシュを送信する必要があります。
