Performance Monitoring は、トレースを使用してアプリ内のモニタリング プロセスに関するデータを収集します。トレースとは、アプリ内の 2 つの時点の間でキャプチャされたデータを含むレポートです。
Apple アプリと Android アプリの場合は、Performance Monitoring によってアプリのライフサイクルに関連する複数のトレースが自動的に収集されます。これらのトレースはすべて、プロセスの実行に要する時間(所要時間)を測定するタイマーのようなものです。
アプリ起動トレース - ユーザーがアプリを開いてからアプリが応答するまでの時間を測定するトレース
フォアグラウンド アプリのトレース - アプリがフォアグラウンドで実行されていてユーザーが利用できる時間を測定するトレース
バックグラウンド アプリのトレース - アプリがバックグラウンドで実行されている時間を測定するトレース。
これらのトレースでは「所要時間」の指標のみが収集されるため、「所要時間トレース」と呼ばれることもあります。
これらのトレースのデータは、パフォーマンス ダッシュボードの下部にあるトレース テーブルの [カスタム トレース] サブタブで表示できます(このページの後半で、コンソールの使用をご覧ください)。
各トレースの定義
Performance Monitoring は、アプリのメソッド呼び出しと通知を使用して各タイプのトレースの開始と停止を判断します。これらのトレースはすべて、プロセスの実行に要する時間を測定するタイマーのようなものです。
アプリ起動トレース
このトレースでは、ユーザーがアプリを開いてからアプリが応答するまでの時間を測定します。コンソールでは、トレース名は _app_start
です。このトレースで収集される指標は「所要時間」です。
アプリの
FirebasePerfProvider
ContentProvider
がonCreate
メソッドを完了すると開始します。最初のアクティビティの
onResume()
メソッドが呼び出されると停止します。
アプリがアクティビティによってコールドスタートされたのではない場合(たとえばサービスやブロードキャスト レシーバによって開始された場合)、トレースは生成されません。
フォアグラウンド アプリのトレース
このトレースでは、アプリがフォアグラウンドで実行され、ユーザーが利用できる時間を測定します。コンソールでは、トレース名は _app_in_foreground
です。このトレースで収集される指標は「所要時間」です。
フォアグラウンドにするための最初のアクティビティによって
onResume()
メソッドが呼び出されると開始します。フォアグラウンドを終了するための最後のアクティビティによって
onStop()
メソッドが呼び出されると終了します。
バックグラウンド アプリのトレース
このトレースでは、アプリがバックグラウンドで実行されている時間を測定します。コンソールでは、トレース名は _app_in_background
です。このトレースで報告される指標は「所要時間」です。
フォアグラウンドを終了するための最後のアクティビティによって
onStop()
メソッドが呼び出されると開始します。フォアグラウンドにするための最初のアクティビティによって
onResume()
メソッドが呼び出されると停止します。
これらのトレースで収集される指標
これらのトレースは事前構成済みのトレースであるため、カスタム指標やカスタム属性は追加できません。
これらのトレースはすべて、モニタリング対象のプロセスの実行に要する時間を測定するタイマーのようなものです。この収集された指標の名前は「所要時間」です。
パフォーマンス データの追跡、表示、フィルタリング
リアルタイム パフォーマンス データを確認するには、リアルタイム データ処理と互換性のあるバージョンの Performance Monitoring SDK がアプリで使用されるようにしてください。詳しくは、リアルタイム パフォーマンス データに関する記事をご覧ください。
ダッシュボードで主要な指標を追跡する
主要な指標の傾向を確認するには、[Performance] ダッシュボードの上部にある指標ボードに追加します。前週比の変化を確認することで、すみやかに回帰を特定できます。また、最近のコード変更でパフォーマンスが改善されたか確認することもできます。
Firebase Performance Monitoring ダッシュボード" /> の指標ボードの画像指標ボードに指標を追加する手順は次のとおりです。
- Firebase コンソールのパフォーマンス ダッシュボードに移動します。
- 空の指標カードをクリックし、ボードに追加する既存の指標を選択します。
- 入力された指標カードの をクリックすると、指標の置き換えや削除などの詳細オプションが表示されます。
指標ボードには、グラフおよび数値(割合の変化)の形式で、収集された指標データが時系列で表示されます。
ダッシュボードの使用で詳細をご確認ください。
トレースとそのデータを表示する
トレースを表示するには、Firebase コンソールのパフォーマンス ダッシュボードに移動し、トレース テーブルまで下にスクロールして、適切なサブタブをクリックします。テーブルには、各トレースの主要な指標が表示されます。また、特定の指標の変化率でリストを並べ替えることもできます。
Performance Monitoring により、Firebase コンソールのトラブルシューティング ページに指標の変更がハイライト表示されます。これにより、アプリとユーザーに対するパフォーマンス問題の影響をすばやく把握し、影響を最小限に抑えることができます。トラブルシューティング ページは、潜在的なパフォーマンス問題を確認する際に使用できます。たとえば、次のように使用します。
- ダッシュボードで関連する指標を選択して差分を確認します。
- トレース テーブルで、差分の最も大きいものが先頭に表示されるように並べ替えると、割合の変化が大きい箇所を確認できます。
- パフォーマンスの問題を通知するメール通知アラートが届きます。
トラブルシューティング ページには次の方法でアクセスできます。
- 指標ダッシュボードで、[指標の詳細を表示] ボタンをクリックします。
- いずれかの指標カードで、
を選択します。選択した指標に関する情報がトラブルシューティング ページに表示されます。 => [詳細を表示] - トレース テーブルで、トレースに関連付けられた行にあるトレース名または指標値をクリックします。
- メール通知アラートで、[今すぐ調査] をクリックします。
トレース テーブルでトレース名をクリックすると、目的の指標にドリルダウンできます。[
- 過去のリリースや最新のリリースに関するデータを表示するには、[アプリのバージョン] でフィルタします
- 古いデバイスにおけるアプリの処理方法を確認するには、[デバイス] でフィルタします
- データベースのロケーションが特定のリージョンに影響していないことを確認するには、[国] でフィルタします
詳細については、トレースのデータを表示するをご覧ください。
次のステップ
パフォーマンス データを調査することを目的とする属性の使用について、詳しく確認する。
Firebase コンソールでパフォーマンスの問題を追跡する方法を学習する。
アプリのパフォーマンスを低下させるコード変更に関するアラートを設定する。たとえば、アプリ起動時間が設定したしきい値を超えた場合に、チームに送信するメール通知アラートを構成できます。
- 同じセッション中に収集された他のトレースのタイムライン コンテキストで特定のトレースを表示できるユーザー セッションの詳細レポートを表示する。