重要
New Relic Androidエージェントのバージョン5.9.0以降では、カスタムユーザー識別子の値を設定して、ユーザーセッションを分析イベントおよび属性に関連付けることができます。詳細については、 NewRelic.setUserId
メソッドを参照してください。
Androidエージェントは、アプリケーションを監視するためのカスタムインストルメンテーションをセットアップするためのSDKAPIを提供します。 APIには、次の機能があります。
- 独自のコードをインストルメントします。
- モバイルアプリのイベントからインタラクショントレースを作成、名前付け、終了します。
- カスタムメトリックを記録します。
- カスタム属性とイベントを送信します。
- 自動的にサポートされていないライブラリからネットワークを追跡します。
SDKをインストールします
Android SDK APIを使用する前に:
- Android SDK APIリリースノートを確認して、モバイルモニタリング用の現在のSDKがアプリに組み込まれていることを確認してください。
- one.newrelic.comにアクセスし、[データを追加] をクリックし、Android の手順に従います。
詳細については、 Androidのインストールと構成の詳細な手順を参照してください。 Android 2.2をサポートする必要がある場合は、 従来のAndroidエージェントSDKの手順を参照してください。
コードをインストルメントする
注意
トレースは大幅に最適化されていますが、パフォーマンスのオーバーヘッドが発生します。何百回も呼び出されることが予想される計測メソッドは避けてください。
インタラクショントレースに含めるカスタムライブラリまたはアプリケーションコードがある場合:
次のJavaアノテーションを使用します。
import com.newrelic.agent.android.instrumentation.Trace;インストルメントするメソッドに
@Trace
アノテーションを追加します。@Tracepublic void myHeavyweightMethod() {…トレースされているメソッドの種類を示すには、オプションの
category
属性を使用します。
APIメソッドを使用する
次の表に、すべてのNew Relic AndroidSDKAPI呼び出しを一般的なユースケース順に示します。
あなたがしたい場合は... | これを行う |
---|---|
クラッシュのトラブルシューティングに役立つ可能性のあるアプリのアクティビティを追跡する |
|
インタラクションとしてメソッドを追跡する |
|
インタラクションに名前を付けるか名前を変更する |
|
インタラクションを終了する |
|
すべてのインタラクションを無効または有効にする |
|
インタラクションに関連付けられたアプリのバージョンを設定する |
|
カスタムビルドIDを設定する |
|
カスタムメトリックを作成する |
|
カスタム属性とイベントを報告する | カスタム属性とイベントを追加する方法はいくつかあります。使用するのに最適な方法とその理由の詳細については、「カスタムデータの追加」を参照してください。
|
カスタムネットワークの要求と障害を追跡する | 次の方法を使用します。
|
処理された例外を、コンテキストを含むイベントとして記録します |
|
ReactNative アプリから JavaScript エラーを記録する |
|
アプリの起動時間の目標アクティビティを設定する |
|
エージェントのシャットダウン |
|
手動のクロスアプリケーショントレース
noticeHttpTransaction
コードは、クロスアプリケーショントレースを機能させるために必要な適切なヘッダーID値を自動的に追加しません。これが、AndroidアプリのモバイルアプリのNewRelicのマップページまたはHTTPリクエストページにアプリケーションリンクが表示されない理由です。
New Relic Android SDKのパブリックメソッドを使用して、HTTPリクエストとともにバックエンドアプリケーションに渡す適切なIDを取得できます(New Relicによって既にインストルメント化されている場合)。適切なヘッダーIDが応答でバックエンドアプリケーションから渡され、クロスアプリケーショントレースが機能するために必要なすべてのものが提供されます。