Firebase Performance Monitoring の自動トレース

トレースは、アプリ内の 2 つの時点の間で取得されたパフォーマンス データのレポートです。Performance Monitoring SDK をインストールすると、次のタイプのトレースが自動的に提供されます。

  • アプリ起動トレース。ユーザーがアプリを開いてからアプリが応答可能になるまでの時間を測定します。
  • 画面トレース。画面のライフタイムを対象とし、低速フレームとフリーズしたフレームを計測します。
  • アプリ バックグラウンドトレース。アプリがバックグラウンドで実行されている時間を測定します。
  • アプリ フォアグラウンドトレース。アプリがフォアグラウンドで実行され、ユーザーが利用できる状態になっている時間を測定します。

自動トレースの定義

Performance Monitoring は、アプリのメソッド呼び出しと通知を使用して各タイプの自動トレースの開始または停止を判断します。

トレースの名称 iOS Android
アプリ起動 アプリが最初の Object をメモリに読み込んだときに開始し、アプリが UIApplicationDidBecomeActiveNotification 通知を受信した後にランループの処理に初めて成功すると停止します。 アプリの FirebasePerfProvider ContentProvideronCreate メソッドを完了すると開始され、最初のアクティビティの onResume() メソッドが呼び出されると停止します。アプリがアクティビティによってコールドスタートしていない場合(たとえばサービスやブロードキャスト レシーバによって開始された場合)、トレースは生成されません。
画面 アプリが viewDidAppear: を呼び出したときに keyWindow のすべての UIViewController に応じて開始され、アプリが viewDidDisappear: を呼び出すと停止します。画面トレースは、正規のコンテナビュー コントローラをキャプチャしません。 アプリが onActivityStarted() を呼び出したときにすべての Activity クラスに応じて開始し、アプリが onActivityStopped() を呼び出したときに停止します。
アプリ バックグラウンド アプリケーションが UIApplicationWillResignActiveNotification 通知を受信すると開始され、UIApplicationDidBecomeActiveNotification を受信すると停止します。 フォアグラウンドから切り替わる最後のアクティビティで onStop() メソッドが呼び出されると開始し、フォアグラウンドに切り替わる最初のアクティビティで onResume() メソッドが呼び出されると停止します。
アプリ フォアグラウンド アプリケーションが UIApplicationDidBecomeActiveNotification 通知を受信すると開始され、UIApplicationWillResignActiveNotification を受信すると停止します。 フォアグラウンドに切り替わる最初のアクティビティで onResume() メソッドが呼び出されると開始し、フォアグラウンドから切り替わる最後のアクティビティで onStop() メソッドが呼び出されると停止します。

トレース サンプルの詳細を見る

Firebase コンソールで、特定のトレースまたはネットワーク リクエストのセグメントを詳しく知ることができます。記録されたセッションをランダムにサンプリングすると、次の情報が表示されます。

Firebase Performance Monitoring のセッション ページのイメージ

  • CPU: Performance Monitoring SDK は、アプリが消費したユーザー時間とシステム時間をキャプチャします。
  • メモリ: Performance Monitoring SDK は、アプリケーションが使用するヒープメモリの量をキャプチャします。ヒープメモリは、作成されたオブジェクト、割り当てが解除されたオブジェクト、およびアプリケーションが積極的に使用しているオブジェクトなど、動的な割り当てに使用されるメモリです。
  • 個別情報: 開始時間、終了時間、継続時間、リクエスト サイズ、レスポンス サイズなど、トレースまたはネットワーク リクエストの単一インスタンスに関する詳細情報です。
  • 同時インスタンス: 同時に発生したトレースまたはネットワーク リクエストに関する情報です。
  • デバイス属性: アプリのバージョン、モデル、OS のバージョン、無線通信、カスタム属性など、デバイスに関する情報です。

これらの詳細なサンプルを Firebase コンソールで確認するには、アプリのトレースまたはネットワーク リクエストのいずれかを開き、[セッションを表示] をクリックします。または、特定の属性から、属性のセッションのリンクをクリックします。

セッションへのリンクが表示された Firebase Performance Monitoring トレースのイメージ

Performance Monitoring が収集するセッションは、各指標のパーセンタイルに分散されます。パーセンタイル範囲が低いセッションは、パーセンタイル範囲が高いセッションよりも指標の値が低くなります。使用可能なセッションをパーセンタイルでフィルタリングするには、セッションの詳細の上部にあるパーセンタイルのプルダウンを使用します。

Firebase Performance Monitoring のセッション ページのイメージ

フィードバックを送信...

ご不明な点がありましたら、Google のサポートページをご覧ください。