Google は、黒人コミュニティのための人種的公平の促進に取り組んでいます。詳細をご覧ください。

HTTP / Sネットワークリクエストのパフォーマンスデータについて学ぶ(任意のアプリ)

Performance Monitoringは、トレースを使用して、アプリ内の監視対象プロセスに関するデータを収集します。トレースは、アプリの2つの時点の間にキャプチャされたデータを含むレポートです。

すべてのアプリ タイプについて、パフォーマンス モニタリングは、アプリによって発行された各ネットワーク リクエストのトレースを自動的に収集します。これは、 HTTP/S ネットワーク リクエスト トレースと呼ばれます。これらのトレースは、アプリがサービス エンドポイントにリクエストを発行してから、そのエンドポイントからの応答が完了するまでの時間のメトリックを収集します。アプリがリクエストを行うエンドポイントについて、パフォーマンスモニタリングはいくつかの指標をキャプチャします。

  • 応答時間—要求が行われてから応答が完全に受信されるまでの時間

  • 応答ペイロード サイズ — アプリによってダウンロードされたネットワーク ペイロードのバイト サイズ

  • リクエストペイロードサイズ—アプリによってアップロードされたネットワークペイロードのバイトサイズ

  • 成功率—合計応答と比較した成功​​応答のパーセンテージ(ネットワークまたはサーバーの障害を測定するため)

これらのトレースのデータは、パフォーマンスダッシュボードの下部にあるトレーステーブルの[ネットワークリクエスト]サブタブで表示できます(コンソールの使用について詳しくは、このページの後半をご覧ください)。

このすぐに使用できる監視には、アプリに対するほとんどのネットワークリクエストが含まれます。ただし、一部の要求は報告されない場合や、ネットワーク要求を行うために別のライブラリを使用する場合があります。このような場合、Performance Monitoring API を使用して、カスタム ネットワーク リクエスト トレースを手動で計測できます。

URLパターンでのデータ集約

Firebase Performance Monitoringは、同様のネットワークリクエストのデータを自動的に集計して、ネットワークリクエストのパフォーマンスの傾向を理解するのに役立ちます。

Firebaseは、リクエストごとに、ネットワークリクエストのURLがURLパターンと一致するかどうかを確認します。リクエストURLがURLパターンと一致する場合、FirebaseはリクエストのデータをURLパターンの下に自動的に集約します。 Firebaseは、Firebaseコンソールのパフォーマンスダッシュボードの[ネットワーク]タブにURLパターンとその集計データを表示します。

URL パターンとは

URL パターンには、ドメインと URL パスに一致するパターンが含まれます (例: example.com/*/animals/**

  • URLパターンには、次のパスセグメントを含めることができます。

    • プレーン テキスト — 正確な文字列に一致します
    • * —単一のパスセグメント内の任意の文字列に一致します
    • ** — 任意のパス サフィックスに一致します
  • URL パターンは次のいずれかになります。

例: 次の URL リクエストはいずれも、URL パターンexample.com/*/animals/**一致する可能性がありexample.com/*/animals/**

  • example.com/singapore/animals
  • example.com/australia/animals/spiders
  • example.com/australia/animals/marsupials/koala.png

自動URLパターンのドメインには、最初のセグメントとして*を含めることもできます(例: *.example.com/*/fruits/** 。これは現在、カスタム URL パターンではサポートされていません。

Firebase は、各リクエストを1 つの URL パターンのみにマッピングしますカスタムURLパターンを設定した場合、Firebaseは最初にリクエストURLをそれらのパターンに一致させようとします。 Firebase は、一致するカスタム URL パターンが見つからない場合、リクエスト URL を最も代表的な自動 URL パターンに一致させます。次のセクションで、自動およびカスタムURLパターンの詳細を確認してください。

自動 URL パターン

ユーザーによる構成がなくても、Performance Monitoring は、アプリのリクエストを自動 URL パターンと照合することにより、アプリの最新の使用状況を反映しようとします。

自動URLパターンマッチングはどのように機能しますか?

Firebase は、各リクエストを、アプリから送信されたリクエストから派生した最も代表的な自動 URL パターンと照合します。ただし、Firebase は最初にリクエスト URL を構成済みのカスタム URL パターンに一致させようとすることに注意してください。

以下は、Firebase がリクエストをアプリの最も代表的な自動 URL パターンに一致させる方法の基本的な例です。

  1. アプリは次のようなURLに多くのリクエストを送信します。

    • example.com/germany/animals/bears
    • example.com/germany/animals/birds
    • example.com/germany/cars

    Firebase は、 example.com/germany/**がアプリの一般的なリクエスト パターンであると判断し、プロジェクトに自動 URL パターンとして追加します。

    このURLパターンに一致する新しいリクエストについては、Firebaseはリクエストのデータを自動URLパターンexample.com/germany/**集約しexample.com/germany/**

  2. 1週間後、アプリのリクエストの大部分はexample.com/germany/animals/bearsexample.com/germany/animals/birdsexample.com/germany/animals/bearsexample.com/germany/animals/birds 。そのため、Firebaseはexample.com/germany/animals/**より代表的なURLパターンを導き出しexample.com/germany/animals/**

    この新しいURLパターンに新たなマッチング要求の場合、Firebaseは新しいURLパターンの下で要求のデータを集計します。 Firebaseは、 example.com/germany/cars下にあるexample.com/germany/**へのリクエストのデータを引き続き集計しexample.com/germany/**

  3. ただし、今後数週間で、 example.com/germany/animals/bears / example.com/germany/animals/birds example.com/germany/animals/bears / example.com/germany/animals/birdsおよびexample.com/germany/animals/birdsへのアプリのリクエストは大幅に減少しexample.com/germany/animals/bears 。 Firebase は、 example.com/germany/animals/** germany/animals/** がアプリの最新の使用動作を代表していないと判断したため、Firebase はこれらの 2 つのリクエストをexample.com/germany/**照合し始めexample.com/germany/**

    Firebaseは、最も代表的な自動URLパターンではなくなったため、 example.com/germany/animals/**ドイツ/ animals / **の下にそれ以上のリクエストデータを集約しません。

自動 URL パターン マッチングは動的であるため、次の点に注意してください。

  • 以前のリクエストからの一致と集計データは、新しい URL パターンの影響を受けません。 Firebaseは、リクエストデータをさかのぼって再集計しません。

  • 新しいURLパターンの影響を受けるのは、将来のリクエストのみです。 Firebaseは、新しいリクエストをそれぞれ最も代表的な自動URLパターンにマッピングします。ただし、Firebaseは最初にリクエストURLを設定済みのカスタムURLパターンと照合しようとすることに注意してください。

自動URLパターンとそのデータを表示する

Firebase は、すべての URL パターンとその集計データを、Firebase コンソールのパフォーマンスダッシュボードの下部にあるトレース テーブルの [ネットワーク リクエスト]サブタブに表示します。

未分類のラベルが付いたURLパターンが表示される場合があります。これらは「幅広い」自動URLパターンであり、Firebaseは、より具体的なURLパターンと一致しないリクエストのデータを集約できます。

URL パターンで集計されたデータのデータ保持期間が終了すると、Firebase はそのデータを URL パターンから削除します。自動 URL パターンで集計されたすべてのデータが期限切れになると、Firebase はその URL パターンを Firebase コンソールから削除します。

カスタムURLパターン

カスタム URL パターンを作成して、Firebase が派生した自動 URL パターン マッチングでキャプチャしていない特定のURL パターンを監視できます。たとえば、カスタムURLパターンを使用して、特定のURLのトラブルシューティングを行ったり、特定のURLセットを経時的に監視したりできます。

詳細については、カスタム URL パターンの作成をご覧ください。

パフォーマンス データの追跡、表示、フィルタリング

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

ダッシュボードで特定の指標を追跡する

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

Firebase PerformanceMonitoringダッシュボードの指標ボードの画像

メトリクス ボードにメトリクスを追加するには、Firebase コンソールのパフォーマンスダッシュボードに移動し、[ダッシュボード] タブをクリックします。空のメトリックカードをクリックしてから、既存のメトリックを選択してボードに追加します。指標の置き換えや削除など、追加のオプションを表示するには、入力された指標カードでをクリックします。

メトリック ボードには、収集されたメトリック データが経時的にグラフ形式と数値のパーセンテージ変化として表示されます。

ダッシュボードの使用についての詳細をご覧ください。

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

トレースを表示するには、Firebase コンソールのパフォーマンスダッシュボードに移動し、トレース テーブルまでスクロールして、適切なサブタブをクリックします。表には各トレースの上位のメトリックが表示され、特定のメトリックの変化率でリストを並べ替えることもできます。

トレーステーブルでトレース名をクリックすると、さまざまな画面をクリックしてトレースを探索し、対象のメトリックにドリルダウンできます。ほとんどのページでは、[ フィルター]ボタン(画面の左上)を使用して、属性でデータをフィルター処理できます。次に例を示します。

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

トレースのデータの表示の詳細をご覧ください

次のステップ