New Relic Unity エージェントは、Unity モバイル アプリを監視し、アプリのパフォーマンス、エラー、ユーザー エクスペリエンスについての深い洞察を提供します。Unity エージェントをインストールして構成すると、次のことができるようになります。
- Capture C# and Native C++ errors: 問題を迅速に特定して修正します。
- Track network requests: アプリがバックエンドとどのように対話するかを確認します。
- Use distributed tracing: 処理された例外をドリルダウンして、根本原因を見つけます。
- Create custom events and metrics: ユーザーがアプリをどのように操作するかを理解します。
one.newrelic.com > All capabilities > Mobile > (select an app) > 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に移動し、 Integrations & Agentsをクリックしてから、 Mobileをクリックします。
- 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 以降を使用している場合は、以下の手順に従ってください。
Gradle ビルド設定に、New Relic Maven リポジトリの URL を含める必要があります。 これを行うには、通常は
Assets/Plugins/Android
フォルダーにあるmainTemplate.gradle
ファイルを開きます。 次のスニペットを追加します。allprojects {buildscript {repositories {ARTIFACTORY_REPOSITORYgoogle()jcenter()mavenCentral()}}}baseProjectTemplate.gradle
ファイル (通常は Unit プロジェクトの Android フォルダーにあります) で、プロジェクト レベルで New Relicclasspath
を追加します。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}プロジェクトでプラグイン DSL を使用している場合は、次の変更を加えます (手順 3 はスキップします)。
android/app/build.gradle 内:
plugins {id "com.android.application"id "kotlin-android"id "com.newrelic.agent.android" version "7.5.1" //<-- include this}launcherTemplate.gradle
ファイル(通常は Unity プロジェクトの Android フォルダーにあります)で、newrelic
プラグインをlauncherTemplate.gradle
ファイルの先頭に適用します。apply plugin: "com.android.application"apply plugin: 'newrelic' // <-- add thisAndroidManifest.xml
ファイルに次の権限を追加します。<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をクリックします。
「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の概要を参照してください。