New Relic Xamarin エージェントは、Xamarin モバイル アプリを監視し、アプリのパフォーマンス、エラー、ユーザー エクスペリエンスに関する深い洞察を提供します。Xamarin エージェントをインストールして構成すると、次のことができるようになります。
- Capture C# errors: 問題を迅速に特定して修正します。
- Track network requests: アプリがバックエンドとどのように対話するかを確認します。
- Use distributed tracing: 処理された例外をドリルダウンして、根本原因を見つけます。
- Create custom events and metrics: ユーザーがアプリをどのように操作するかを理解します。
one.newrelic.com > All capabilities > Mobile > (select an app) > Summary: Xamarin データを表示し、HTTP リクエストとエラーを追跡し、アプリのパフォーマンスを時間の経過とともに監視します。
(推奨) ガイド付きインストール
Xamarin エージェントをインストールするには、UI に直接ある ガイド付きインストールに従ってください。
手動インストール
エージェントを手動でインストールする必要がある場合は、次の手順に従います。
要件を確認する
Xamarin エージェントをインストールする前に、アプリが次のバージョン要件を満たしていることを確認してください。
- Xamarin.Android 8.0 以降
- Xamarin.iOS 10.14 以降
- Android ネイティブ アプリの場合は、Android API 24 以降を使用してください
- iOS ネイティブ アプリの場合は、iOS 10 を使用してください
Xamarin エージェントをプロジェクトに追加する
まず、エージェントである NuGet パッケージを Xamarin プロジェクトに追加する必要があります。
- Xamarin ソリューションを開き、エージェントを追加する Xamarin.Forms プロジェクトを選択して、そのコンテキスト メニューを開きます。
- Add > Add NuGet packagesをクリックし、
NewRelic.Xamarin.Plugin
を選択します。 また、iOS エージェント バインディングをXamarin.iOS
プロジェクトに追加する必要があります。 - エージェントを追加する Xamarin.iOS プロジェクトを選択し、そのコンテキスト メニューを開きます。
- Add > Add NuGet packagesをクリックしてから、
NewRelic.Xamarin.iOS.Binding
を選択します。
UI からアプリケーション トークンをコピーします。
アプリケーション トークンは、New Relic が Xamarin アプリのデータを認証するために使用されます。New Relic UI でアプリケーション トークンを表示およびコピーするには:
one.newrelic.comに移動し、 Integrations & Agentsをクリックしてから、 Mobileをクリックします。
Xamarin アプリを選択します。
Settings > Applicationに移動し、表示されたApplication tokenをコピーします。
このアプリケーション トークンは、次の手順で追加します。
エージェント構成ファイルを次の場所に追加します App.xaml.cs
プロジェクトの App.xaml.cs
ファイルに次のコードを追加します。
using NewRelic.Xamarin.Plugin;... public App () { InitializeComponent(); MainPage = new MainPage(); Application.Current.PageAppearing += OnPageAppearing; Application.Current.PageDisappearing += PageDisappearing; CrossNewRelicClient.Current.HandleUncaughtException(); CrossNewRelicClient.Current.TrackShellNavigatedEvents(); // Set optional agent configuration // Options are: crashReportingEnabled, loggingEnabled, logLevel, collectorAddress, // crashCollectorAddress, analyticsEventEnabled, networkErrorRequestEnabled, // networkRequestEnabled, interactionTracingEnabled, webViewInstrumentation, fedRampEnabled, // offlineStorageEnabled, newEventSystemEnabled, backgroundReportingEnabled // AgentStartConfiguration agentConfig = new AgentStartConfiguration(crashReportingEnabled:false);
if (Device.RuntimePlatform == Device.Android) { CrossNewRelicClient.Current.Start("YOUR_APP_TOKEN"); // Start with optional agent configuration // CrossNewRelicClient.Current.Start("YOUR_APP_TOKEN", agentConfig); } else if (Device.RuntimePlatform == Device.iOS) { CrossNewRelicClient.Current.Start("YOUR_APP_TOKEN"); // Start with optional agent configuration // CrossNewRelicClient.Current.Start("YOUR_APP_TOKEN", agentConfig); } }
アプリケーション トークンを上記のコードのappToken = ""
に貼り付けてください。ハイブリッド アプリを iOS と Android の両方のプラットフォームにデプロイした場合は、2 つの個別のトークン (iOS 用と Android 用) を追加する必要があります。
(Android のみ) 権限を追加する
Android ネイティブ アプリをお持ちの場合は、 Platforms/Android/AndroidManifest.xml
ファイルに INTERNET
権限と ACCESS_NETWORK_STATE
権限を追加する必要があります。
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /><uses-permission android:name="android.permission.INTERNET" />
エージェントのインストルメンテーションをカスタマイズする
エージェントのインストルメンテーションをカスタマイズする必要がありますか?パブリック モバイル SDK API メソッドを使用すると、カスタム データの収集、デフォルト設定の構成などが可能になります。
Xamarin エージェントでは次のカスタマイズが可能です。
あなたがしたい場合は... | この方法を使用してください |
---|---|
ブレッドクラムを記録して、クラッシュのトラブルシューティングに役立つアプリのアクティビティを追跡します。 | |
メソッドをインタラクションとして追跡します。 | |
カスタムメトリクスの記録 | |
処理された例外を記録します。 | |
カスタム属性とイベントを記録します。 | カスタム属性とイベントをレポートするには、いくつかの方法があります。 |
カスタム ネットワーク リクエストと障害を追跡します。 | |
エージェントをシャットダウンします。 | |
デフォルトのモバイル監視設定を有効/無効にします。 | |
テストクラッシュレポートを実行します。 |
HTTP エラーのトラブルシューティング
UI に HTTP データがありませんか?
.NET MAUI エージェントをインストールした後、少なくとも 5 分間待ちます。 HTTP エラーと HTTP リクエスト UI ページでNo HTTP data appears:が発生した場合は、 HttpClient
でHttpMessageHandler
を使用したことを確認してください。