2022 年 10 月 18 日に開催される Firebase Summit に、直接会場で、またはオンラインでご参加ください。Firebase を使用してアプリ開発を加速させ、自信を持ってアプリをリリースし、簡単にスケールする方法をご紹介します。 今すぐ申し込む

コンソールでのパフォーマンスデータの監視

コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

リアルタイムのパフォーマンス データを表示するには、アプリがリアルタイム データ処理と互換性のある Performance Monitoring SDK バージョンを使用していることを確認してください。リアルタイムのパフォーマンス データについて詳しくは、こちらをご覧ください

ダッシュボードで主要な指標を追跡する

主要な指標の傾向を知るには、パフォーマンスダッシュボードの上部にある指標ボードに追加します。週ごとの変更を確認することでリグレッションをすばやく特定したり、コードの最近の変更によってパフォーマンスが向上していることを確認したりできます。

Firebase Performance Monitoring ダッシュボードのメトリクス ボードの画像

追跡できる傾向の例を次に示します。

  • アプリの起動に新しいブロッキング API 呼び出しを追加してからのアプリの起動時間の増加
  • フルサイズの画像をサムネイルにサイズ変更する機能を実装したため、ネットワーク リクエストのレスポンス ペイロード サイズが減少しました
  • エコシステムの停止中のサードパーティ API 呼び出しのネットワーク成功率の低下

Firebase プロジェクトの各メンバーは、独自のメトリクス ボードを構成できます。自分にとって重要な指標を追跡できますが、他のプロジェクト メンバーは、自分のボードでまったく異なる一連の重要な指標を追跡できます。

メトリクス ボードにメトリクスを追加するには、次の手順に従います。

  1. Firebase コンソールのパフォーマンスダッシュボードに移動します。
  2. 空のメトリック カードをクリックし、既存のメトリックを選択してボードに追加します。
  3. メトリックの置換や削除など、その他のオプションについては、入力済みのメトリック カードでをクリックします。

メトリクス ボードには、収集されたメトリクス データが経時的にグラフ形式と数値の変化率の両方で表示されます。

  • 各メトリック カードには、選択した時間範囲におけるメトリックの値の変化率と、最近収集されたメトリックの値が表示されます。メトリクス ボードの上部にあるステートメントは、変化率の解釈です。
  • デフォルトでは、メトリクス ボードにはメトリクスの 90 パーセンタイル値が表示されます。これはAndroid Vitalsと一致します。ユーザーのさまざまなセグメントがアプリをどのように体験しているかを確認したい場合は、ダッシュボード ページの上部にあるドロップダウンから別のパーセンタイルを選択します。
  • アプリのバージョンが異なる場合は、あるバージョンの指標の値が別のバージョンと比較したり、すべてのバージョンと比較したりして、その傾向を確認できます。チャートの下のドロップダウンからバージョンを選択します。

赤、緑、灰色の色は何を意味しますか?

ほとんどのメトリックには望ましいトレンド方向があるため、メトリック ボードは色を使用して、メトリックのデータが良い方向または悪い方向に傾向があるかどうかの解釈を表示します。

たとえば、アプリの起動時間を追跡しているとします (値は小さくする必要があります)。この値が増加している場合、メトリクス ボードにはメトリクスのパーセンテージの変化が赤で表示され、考えられる問題に注意を喚起します。ただし、値が減少しているか変化していない場合、メトリック ボードにはパーセンテージがそれぞれ緑色または灰色で表示されます。

ネットワーク リクエストの応答ペイロード サイズのように、メトリクスに明らかな望ましい傾向の方向がない場合、メトリクス ボードには、データの傾向に関係なく、常にメトリクスのパーセンテージの変化が灰色で表示されます。

実線と破線は何を意味していますか?

  • 濃い青色の実線 — アプリのすべてのバージョンの経時的な指標の値
    この行は、アプリのベースラインと見なすことができます。

  • 薄緑色の実線 — アプリの特定のバージョンの経時的な指標の値
    デフォルトでは、メトリクス ボードには最新バージョンのデータが表示されます。グラフに別のバージョンを表示するには、グラフの下にある最初のドロップダウンを使用します。

  • 灰色の実線 — アプリの別の特定のバージョンの経時的な指標の値
    デフォルトでは、メトリクス ボードには 2 番目のバージョンのデータは表示されません。グラフに 2 番目のバージョンを表示するには、グラフの下にある 2 番目のドロップダウンを使用します。

  • 水色の破線 — 過去の特定の時点におけるすべてのバージョンのメトリックの値
    たとえば、過去 7 日間のグラフを表示するように選択し、8 月 30 日にカーソルを合わせると、8 月 23 日のすべてのバージョンの指標の値が水色の破線で示されます。



トレースとそのデータを表示する

パフォーマンスダッシュボードの下部にあるトレース テーブルで、アプリのすべてのトレースを表示できます。テーブルは、適切なサブタブ内の各タイプのトレースをグループ化します。たとえば、すべてのネットワーク リクエスト トレースは、[ネットワーク リクエスト] サブタブの下に一覧表示されます。

トレース テーブルには、各トレースのいくつかの上位メトリックの値が、各メトリックの値の変化率とともに表示されます。これらの値は、[ダッシュボード] タブの上部で設定されたパーセンタイルと時間範囲の選択に基づいて計算されます。ここではいくつかの例を示します。

  • 90%のパーセンタイルと [過去 7 日間] の時間範囲を選択した場合、指標の値は最新のに収集されたデータの90 パーセンタイルになり、変化率は 7 日前からの変化になります。
  • その後、時間範囲を [過去 24 時間]に変更すると、メトリックの値は最新の1 時間から収集されたデータの中央値になり、変化率は 24 時間前からの変化になります。

各サブタブのトレースのリストを、メトリックの値または特定のメトリックの変化率で並べ替えることができます。これにより、アプリの潜在的な問題をすばやく特定できます。

特定のトレースのすべてのメトリックとデータを表示するには、トレース テーブルでトレース名をクリックします。このページの次のセクションでは、詳細を説明します。

特定のトレースの詳細データを表示する

Performance Monitoring は Firebase コンソールのトラブルシューティング ページを提供し、メトリックの変化を強調表示するため、アプリやユーザーに対するパフォーマンスの問題に迅速に対処し、影響を最小限に抑えることが容易になります。たとえば、次のシナリオで、潜在的なパフォーマンスの問題について学習したときに、トラブルシューティング ページを使用できます。

  • ダッシュボードで関連する指標を選択すると、大きな差があることに気付きます。
  • トレース テーブルで、最大のデルタを一番上に表示するように並べ替えると、大幅な変化率が表示されます。
  • パフォーマンスの問題を通知する電子メール アラートを受け取ります。

トラブルシューティング ページには、次の方法でアクセスできます。

  • メトリック ダッシュボードで、[メトリックの詳細を表示] ボタンをクリックします。
  • 任意の指標カードで、 => 詳細を表示を選択します。トラブルシューティング ページには、選択したメトリックに関する情報が表示されます。
  • トレース テーブルで、トレース名またはそのトレースに関連付けられている行のメトリック値をクリックします。
  • 電子メール アラートで、[今すぐ調査] をクリックします。

トレース テーブルでトレース名をクリックすると、関心のあるメトリックにドリルダウンできます。 [フィルター ] ボタンをクリックして、属性別にデータをフィルター処理します。次に例を示します。

属性でフィルタリングされた Firebase Performance Monitoring データの画像
  • アプリのバージョンでフィルターして、過去のリリースまたは最新のリリースに関するデータを表示します
  • デバイスでフィルタリングして、古いデバイスがアプリをどのように処理するかを確認します
  • でフィルター処理して、データベースの場所が特定の地域に影響していないことを確認します

トレース用に収集されたすべてのメトリックを表示する

トレースをクリックすると、関心のあるメトリックにドリルダウンできます。

  • ネットワーク リクエスト トレース— 使用可能なメトリック タブは、応答時間応答ペイロード サイズ要求ペイロード サイズ、および成功率です。
  • アプリの開始、フォアグラウンドのアプリ、バックグラウンドのアプリ、およびカスタム コードのトレース— [期間] メトリック タブは常に使用可能です (これらのタイプのトレースの既定のメトリック)。カスタム コード トレースの場合、カスタム メトリックをトレースに追加すると、それらのメトリック タブも表示されます。
  • 画面レンダリング トレース— 使用可能なメトリック タブは、[低速レンダリング]と [フリーズ フレーム]です。

メトリック タブのすぐ下に、選択したメトリックのパフォーマンスの概要が表示されます。これには、時間の経過に伴うメトリックの傾向の 1 文の概要と、選択した日付範囲全体にわたるデータの分布を視覚化するグラフが含まれます。

Firebase Performance Monitoring のエラー コードの内訳のイメージ

たとえば、選択した指標がネットワークの成功率である場合、グラフには、すべてのエラー コードの内訳と、すべてのエラー レスポンスの割合が表示されます( Firebase コンソールで除外されたエラー コードを含む)。

データに関する詳細情報を表示する

属性ごとにデータをフィルタリングしてセグメント化するか、クリックしてアプリ使用セッションのコンテキストでデータを表示できます。

たとえば、最近のネットワークの応答時間が遅い理由、およびパフォーマンスに影響を与えている国があるかどうかを理解するには、次の手順に従います。

  1. 属性ドロップダウンからを選択します。
  2. 表で、最新の値で並べ替えて、ネットワークの応答時間に最大の影響を与えている国を確認します。
  3. 最新の値が最も大きい国を選択してグラフにプロットします。次に、グラフのタイムラインにカーソルを合わせると、それらの国でネットワークの応答時間が遅くなった時期がわかります。
  4. 特定の国におけるネットワーク応答時間の問題の根本原因をさらに調査するには、それらの国にフィルターを追加し、他の属性 (無線の種類やデバイスなど) について調査を続けます。



ユーザー セッションの詳細を表示する

Performance Monitoring は、アプリがフォアグラウンドにある期間であるユーザー セッションのレポートも提供します。これらのレポートは特定のトレースに関連付けられており、同じセッション中に Performance Monitoring が収集した他のトレースのタイムライン コンテキストでトレースを表示します。

たとえば、カスタム コード トレースを開始順に (個々の期間とともに) 並べて表示したり、同時に発生したネットワーク リクエスト トレースを表示したりできます。

コンソールには、これらのユーザー セッションのランダム サンプリングが表示されます。これらは、Apple および Android アプリと、画面レンダリング トレースを除くすべてのタイプのトレースで使用できます。

ユーザー セッションに関して表示できるその他のデータの一部を次に示します。

Firebase Performance Monitoring セッション ページの画像
  • トレースに関する情報:そのセッションのトレースに関する詳細情報。開始時刻、終了時刻、属性 (デバイスや国など)、およびそのタイプのトレースに適用される指標 (カスタム コード トレースまたは応答の期間など) が含まれます。ネットワーク要求トレースの時間)。
  • CPU:セッション中にアプリが消費したユーザー時間とシステム時間
  • メモリ:セッション中にアプリが使用したヒープ メモリの量

セッション データの表示方法

  1. Firebase コンソールのパフォーマンスダッシュボードに移動し、トレース テーブルまでスクロールして、関心のあるトレースの適切なサブタブをクリックします。
  2. テーブル内のトレース名をクリックして、使用可能なすべてのメトリックを表示します。
  3. 指定したトレースのセッション データを表示するには、[ View all sessions ] をクリックします。
  4. 選択したメトリックの属性値に関連付けられたセッションを表示するには、目的の行にカーソルを合わせ、その行の右端の列に表示される [セッション] テキストをクリックします。
セッションへのリンクを含む Firebase Performance Monitoring トレースの画像

セッションをパーセンタイルでフィルタリング

セッションは、メトリックごとにパーセンタイルに分散されます。パーセンタイル範囲が低いセッションは、パーセンタイル範囲が高いセッションよりも指標の値が低くなります。

利用可能なセッションをパーセンタイルでフィルタリングするには、セッションの詳細の上にあるパーセンタイル ドロップダウンを使用するか、チャート ハンドルをドラッグします。

Firebase Performance Monitoring セッション ページの画像