New Relic Unity エージェントは、Unity モバイル アプリを監視し、アプリのパフォーマンス、エラー、ユーザー エクスペリエンスについての深い洞察を提供します。Unity エージェントをインストールして構成すると、次のことができるようになります。
- C# およびネイティブ C++ エラーをキャプチャ:問題を迅速に特定して修正します。
- Track network requests: [ネットワーク リクエストを追跡する:] アプリがバックエンドとどのようにやり取りするかを確認します。
- Use distributed tracing: [分散トレースを使用する:] 処理された例外をドリルダウンして、根本原因を見つけます。
- カスタム イベントとメトリクスを作成する: ユーザーがアプリをどのように操作するかを理解します。
one.newrelic.com > All capabilities> Mobile > (アプリを選択) > Summary: Unity データを表示し、HTTP リクエストとエラーを追跡し、アプリの経時的なパフォーマンスを監視します。
(推奨) ガイド付きインストール
Unity エージェントをインストールするには、UI に直接あるガイド付きインストールに従ってください。
手動インストール
エージェントを手動でインストールする必要がある場合は、次の手順に従います。
要件を確認する
Unity エージェントをインストールする前に、Unity アプリが次のバージョン要件を満たしていることを確認してください。
Android ネイティブ アプリの場合:
- Android API 24 以上
- Android ネイティブの要件を参照してください
iOS ネイティブ アプリの場合:
- iOS ネイティブの要件を参照してください
Unity エージェントをプロジェクトに追加する
Unity パッケージ マネージャーで、次の GitHub URL を追加します。
https://github.com/newrelic/newrelic-unity-agent.git
アプリケーショントークンを追加する
New Relic が Unity アプリのデータを認証できるようにするには、次の手順に従います。
New Relic からアプリケーション トークンを取得します。
- one.newrelic.comにアクセスし、 [データを追加]をクリックし、 [モバイル]をクリックします。
- Unity アプリを選択します。
- Settings > Application に移動し、表示された Application tokenをコピーします。
トークンを Unity プロジェクトに追加します。
Unity IDE を開きます。
Tools > New Relic > Getting Startedに移動して、エディターウィンドウを開きます。
アプリがサポートするプラットフォームごとに、適切なアプリケーション トークンを対応するフィールドに貼り付けます。
- Android: Android トークンを「Android アプリ トークン」フィールドに貼り付けます。
- iOS: iOS トークンを「iOS アプリ トークン」フィールドに貼り付けます。
アプリが Android と iOS の両方で実行される場合は、プラットフォームごとに個別のトークンを提供します。両方に同じトークンを使用しないでください。
(Android のみ) Android アプリを構成する
Android アプリを構成するには、Gradle テンプレートをカスタマイズする必要があります。Unity 2019 以降を使用している場合は、次の手順を実行します。
New Relic Maven リポジトリ URL を Gradle ビルド設定に含めます。これを行うには、
mainTemplate.gradle
ファイルを開きます。このファイルは通常、Assets/Plugins/Android folder
にあります。次に、次のように New Relic Maven URL を開きます。allprojects {buildscript {repositories {**ARTIFACTORYREPOSITORY**google()jcenter()mavenCentral()}}New Relic
classpath
をプロジェクト レベルのbaseProjectTemplate.gradle
ファイルに追加します。通常、このファイルは Unity プロジェクトの Android フォルダーにあります。dependencies {// If you are changing the Android Gradle Plugin version, make sure it is compatible with the Gradle version preinstalled with Unity.// See which Gradle version is preinstalled with Unity here: https://docs.unity3d.com/Manual/android-gradle-overview.html// See the official Gradle and Android Gradle Plugin compatibility table here: https://developer.android.com/studio/releases/gradle-plugin#updating-gradle// To specify a custom Gradle version in Unity, go to "Preferences > External Tools", uncheck "Gradle Installed with Unity (recommended)", and specify a path to a custom Gradle version.classpath 'com.newrelic.agent.android:agent-gradle-plugin:7.2.0'**BUILD_SCRIPT_DEPS**}}Gradle 7.0 以下を必要とする古い Unity バージョンを使用している場合は、互換性を確保するために特定のクラスパスの依存関係を使用する必要があります。
dependencies {// If you are changing the Android Gradle Plugin version, make sure it is compatible with the Gradle version preinstalled with Unity.// See which Gradle version is preinstalled with Unity here: https://docs.unity3d.com/Manual/android-gradle-overview.html// See official Gradle and Android Gradle Plugin compatibility table here: https://developer.android.com/studio/releases/gradle-plugin#updating-gradle// To specify a custom Gradle version in Unity, go to "Preferences > External Tools", uncheck "Gradle Installed with Unity (recommended)", and specify a path to a custom Gradle version.classpath 'com.newrelic.agent.android:agent-gradle-plugin:6.11.0'**BUILD_SCRIPT_DEPS**}newrelic
プラグインをlauncherTemplate.gradle
ファイルの先頭に適用します。このファイルは通常、Unity プロジェクトの Android フォルダーにあります。apply plugin: "com.android.application"apply plugin: 'newrelic' // <-- add thisAndroidManifest.xml
ファイルにINTERNET
およびACCESS_NETWORK_STATE
権限を追加します。<uses-permission android:name="android.permission.INTERNET" /><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
(iOS のみ) 依存関係を管理する
iOS の場合は、外部依存関係マネージャーの設定を確認します。
Unity IDE で、 Assets [アセット]に移動し、 External Dependency Manager [外部依存関係マネージャー]を開きます。
iOS Resolver [iOS リゾルバー]をクリックします。
「Podfile Configurations」セクションで、次の設定を確認します。
- Add use_frameworks! to Podfileが無効になっています
- Always add the main target to Podfile有効になっています
iOS の依存関係管理に Podfile を使用していない場合は、次の手順に従います。
New Relic XCFramework SDK (iOS エージェント) をダウンロードして解凍します。最新の iOS エージェントは、 iOS エージェントのリリース ノートから入手できます。
New Relic XCFramework を Xcode プロジェクトに追加します。
- SDK ダウンロードを解凍します。
- Finder から、
NewRelicAgent.xcframework
フォルダを Xcode プロジェクトにドラッグし、Targets Frameworks ペインに配置します。 - Embed [埋め込み] 列の下でEmbed & Sign [埋め込みと署名] をクリックします。
そして、あなたは完了です!5 分以内に New Relic でデータが表示されるようになります。
エージェントのインストルメンテーションをカスタマイズする
エージェントのインストルメンテーションをカスタマイズする必要がありますか?パブリック モバイル SDK API メソッドを使用すると、カスタム データの収集、デフォルト設定の構成などが可能になります。
Unity エージェントでは次のカスタマイズが可能です。
あなたがしたい場合は... | この方法を使用してください |
---|---|
ブレッドクラムを記録して、クラッシュのトラブルシューティングに役立つアプリのアクティビティを追跡します。 | |
メソッドをインタラクションとして追跡します。 | |
カスタムメトリクスの記録 | |
例外を記録します。 | |
カスタム属性とイベントを記録します。 | カスタム属性とイベントをレポートするには、いくつかの方法があります。 |
カスタム ネットワーク リクエストと障害を追跡します。 | |
エージェントをシャットダウンします。 | |
テストクラッシュレポートを実行します。 |
C# エラーを監視する
New Relic UI では、致命的および致命的ではない C# エラーと、記録された各エラーのイベント証跡、属性、スタック トレースなどの詳細を含む、処理された例外を表示できます。
エラーを表示するには:
- one.newrelic.com > All capabilities > Mobileに移動します。
- Unity アプリを選択します。
- Exceptions [例外] > Handled exceptions [処理された例外]をクリックします。
次のクエリを使用して、これらのエラーのダッシュボードを構築することもできます。
SELECT * FROM MobileHandledException SINCE 24 hours ago
ログデータのクエリ
New Relic は、Unity ログをカスタム イベントとして保存します。次の NRQL クエリを使用して、これらのログをクエリし、ダッシュボードを構築できます。
SELECT * FROM `Mobile Unity Logs` SINCE 30 MINUTES AGO
NRQLクエリの詳細については、 NRQLの概要を参照してください。