Performance Monitoring は、トレースを使用してアプリ内のモニタリング プロセスに関するデータを収集します。トレースとは、アプリ内の 2 つの時点の間でキャプチャされたデータを含むレポートです。
Apple アプリと Android アプリの場合は、Performance Monitoring によってにアプリ内の異なる画面のレンダリング パフォーマンスが自動的測定されます。Performance Monitoring は、アプリの画面ごとに画面レンダリング トレースを作成します。これらのトレースは、次の指標を収集して測定します。
遅いレンダリングのフレーム - レンダリングに 16 ミリ秒以上かかる画面インスタンスの割合を測定します。
フリーズしたフレーム - レンダリングに 700 ミリ秒以上かかる画面インスタンスの割合を測定します。
アプリのフレームの遅延やフリーズが、デバイスのパフォーマンスの低下(ジャンクまたは遅延)につながる可能性があります。フリーズしたフレームと遅いレンダリング フレーム指標をキャプチャすることで、パフォーマンスの低い画面を特定でき、アプリのレンダリング パフォーマンスの改善につながります。
画面レンダリング トレースのデータは、トレース テーブルの [画面レンダリング] タブで確認できます。トレース テーブルは、Firebase コンソールの [パフォーマンス] ページの下部にあります。詳細については、パフォーマンス データの追跡、表示、フィルタリングをご覧ください。
画面レンダリング トレースによって収集される指標
これらのトレースは事前構成済みのトレースであるため、カスタム指標やカスタム属性は追加できません。
レンダリングが遅いフレームとフリーズしたフレームは、想定される 60 Hz のデバイス リフレッシュ レートで計算されます。デバイスのリフレッシュ レートが 60 Hz 未満の場合は、1 秒間にレンダリングされるフレームが少なくなるため、各フレームでレンダリング時間が長くなります。レンダリング時間が長くなると、レンダリングが遅くなるフレームやフリーズするフレームが多くなるため、遅いフレームやフリーズしたフレームの報告が増えます。ただし、デバイスのリフレッシュ レートが 60 Hz を超える場合は、各フレームでレンダリング時間が短くなります。これにより、遅いフレームやフリーズしたフレームが報告される回数が少なくなります。これは、Performance Monitoring SDK の現在の制限です。
レンダリングが遅いフレーム
この指標は、特定の画面でレンダリングが著しく遅くなっているユーザー セッションの割合です。具体的には、この指標はレンダリングに 16 ms を超える時間を要したフレームが 50% を上回る画面インスタンスの割合です。
フリーズしたフレーム
この指標は、特定の画面で著しくフリーズしたフレームがあるユーザー セッションの割合です。具体的には、この指標はレンダリングに 700 ms を超える時間を要したフレームが 0.1% を上回る画面インスタンスの割合です。
画面レンダリング トレースの生成方法
アプリが
viewDidAppear:
を呼び出すと、keyWindow 内のすべての UIViewController について開始されます。アプリが
viewDidDisappear:
を呼び出すと停止します。
画面レンダリング トレースは、正規のコンテナビュー コントローラをキャプチャしません。
パフォーマンス データの追跡、表示、フィルタリング
リアルタイム パフォーマンス データを確認するには、リアルタイム データ処理と互換性のあるバージョンの Performance Monitoring SDK がアプリで使用されるようにしてください。詳しくは、リアルタイム パフォーマンス データに関する記事をご覧ください。
ダッシュボードで主要な指標を追跡する
主要な指標の傾向を確認するには、[Performance] ダッシュボードの上部にある指標ボードに追加します。前週比の変化を確認することで、すみやかに回帰を特定できます。また、最近のコード変更でパフォーマンスが改善されたか確認することもできます。
指標ボードに指標を追加する手順は次のとおりです。
- Firebase コンソールのパフォーマンス ダッシュボードに移動します。
- 空の指標カードをクリックし、ボードに追加する既存の指標を選択します。
- 入力された指標カードの をクリックすると、指標の置き換えや削除などの詳細オプションが表示されます。
指標ボードには、グラフおよび数値(割合の変化)の形式で、収集された指標データが時系列で表示されます。
ダッシュボードの使用で詳細をご確認ください。
コンソールで画面のパフォーマンスを確認する
トレースを表示するには、Firebase コンソールのパフォーマンス ダッシュボードに移動し、トレース テーブルまで下にスクロールして、適切なサブタブをクリックします。テーブルには、各トレースの主要な指標が表示されます。また、特定の指標の変化率でリストを並べ替えることもできます。
Performance Monitoring により、Firebase コンソールのトラブルシューティング ページに指標の変更がハイライト表示されます。これにより、アプリとユーザーに対するパフォーマンス問題の影響をすばやく把握し、影響を最小限に抑えることができます。トラブルシューティング ページは、潜在的なパフォーマンス問題を確認する際に使用できます。たとえば、次のように使用します。
- ダッシュボードで関連する指標を選択して差分を確認します。
- トレース テーブルで、差分の最も大きいものが先頭に表示されるように並べ替えると、割合の変化が大きい箇所を確認できます。
- パフォーマンスの問題を通知するメール通知アラートが届きます。
トラブルシューティング ページには次の方法でアクセスできます。
- 指標ダッシュボードで、[指標の詳細を表示] ボタンをクリックします。
- いずれかの指標カードで、
を選択します。選択した指標に関する情報がトラブルシューティング ページに表示されます。 => [詳細を表示] - トレース テーブルで、トレースに関連付けられた行にあるトレース名または指標値をクリックします。
- メール通知アラートで、[今すぐ調査] をクリックします。
トレース テーブルでトレース名をクリックすると、目的の指標にドリルダウンできます。[
- 過去のリリースや最新のリリースに関するデータを表示するには、[アプリのバージョン] でフィルタします
- 古いデバイスにおけるアプリの処理方法を確認するには、[デバイス] でフィルタします
- データベースのロケーションが特定のリージョンに影響していないことを確認するには、[国] でフィルタします
詳細については、トレースのデータを表示するをご覧ください。
次のステップ
パフォーマンス データを調査することを目的とする属性の使用について、詳しく確認する。
Firebase コンソールでパフォーマンスの問題を追跡する方法を学習する。