Android モバイル UIアプリでは、アプリケーションのメイン スレッドが 5 秒以上ブロックされると 、アプリケーション応答なし (ANR) エラーが 発生します。ANR エラーは、ネットワーク呼び出し、複雑な計算、リソースの競合など、さまざまな要因によって発生する可能性があります。 頻度と発生パターンを監視することで、アプリ全体の安定性とユーザーエクスペリエンスに関する貴重な情報を得ることができます。
ANRエラーがNew Relicに報告される仕組み
デフォルトでは、Android エージェントは ANR エラーをMobileApplicationExit
イベントとして報告します。これは、Android のApplicationExitInfo
APIを利用してモニターし、アプリ終了のさまざまな原因を報告します。 エージェントは、次のアプリリリースで ApplicationExitInfo
APIを読み取り、履歴内のアプリ終了ごとに MobileApplicationExit
イベントをNew Relicに非同期的に送信します。
New Relic と Google Play Console 間の ANR の不一致を理解する
New Relic と Google Play Console の間で ANR の数とレートに違いが生じる場合があります。 これはデータ収集方法の違いによるものです。
Android バージョン カバレッジ:
- New Relic は、Android 11 以降を実行しているデバイスからの ANR に重点を置いています。
- Google Play Console は、すべての Android バージョンにわたって ANR をキャプチャします。
デバイスとアプリのスコープ:
- New Relic は、アプリのソースに関係なく、New Relic エージェントがインストールされているデバイスからレポートします。
- Google Play Console は、Play ストアからアプリをダウンロードした認定デバイスからのレポートのみを表示します。
詳細については、 Google Play のドキュメントをご覧ください。
New RelicでANRを表示する
デフォルトでは、Android エージェントは ANR エラーを収集し、New Relic に報告します。 ANR データは次の 2 つの場所で見つかります。
概要ページには、エラーの割合を表示する
ANR rate
というウィジェットがあります。
ANR ページでは、エラー率の内訳、影響を受けるユーザーのグループ、属性の詳細を表示できます。
ANR ページを表示するには:
one.newrelic.com > All capabilities
に移動します。
Mobile
をクリックします。
Android アプリを選択します。
左側のペインで、
ANR
をクリックします。
ANRグループでフィルタリング
ANR ページのウィジェットは、ANR のグループに基づいています。 デフォルトでは、ANR はdescription
属性によってグループ化されます。
ANR のグループ化方法 (デバイスの種類、アプリのバージョン、カスタムアトリビュートなど) を変更するには、 Group byをクリックして、リストから属性を選択します。 ANR ページが更新され、新しい ANR グループのデータが表示されます。
ANRレートを監視する
ANR rateグラフでは、ANR 全般に予期しない急上昇、急降下、パターンがあるかどうかを一目で確認できます。
たとえば、最近のアプリ バージョンをリリースした場合、ANR 率グラフには、時間の経過とともにエラーが発生したセッションの割合が、すべてのセッションの割合としてアプリ バージョン別に表示されます。 平均 ANR セッション パーセントは右上に表示されます。
ANR rate by dayグラフには、時間の経過とともに ANR を経験したユニーク ユーザーの割合が、すべてのユニーク ユーザーの割合として表示されます。
注: 選択した時間に関係なく、このグラフには過去 28 日間の平均 ANR 率が表示されます。
ANR の発生を重要度別に表示する
ANR occurrences by importanceグラフは、ANR による終了前のアプリのプロセスの相対的な重要度による ANR の分布を示しています。 アプリのプロセスの重要性の詳細については、こちらをご覧ください。
ANRプロファイルを詳しく見る
ANR プロファイルは、すべての ANR 発生における属性の分布を示し、パターンを特定して根本原因を迅速に絞り込み、トラブルシューティングするのに役立ちます。
ANR監視を無効にする
重要
サーバーサイド構成は常にローカルエージェント設定よりも優先されます。 同時にアクティブなデバイスが 100,000 台未満のモバイル アプリの場合、エンドユーザーのデバイスに変更を適用するまでに最大 10 分かかることがあります。 アクティブデバイスが 100,000 台を超えるアプリの場合、数時間かかることがあります。
ANR監視を無効にする必要がある場合:
New Relic で、モバイル アプリに移動します。
左側のペインの
Settings
の下で、
Application
をクリックします。
Application Not Responding (ANR) [アプリケーション応答なし (ANR) を]オフに切り替えます。
クリック 保存.