Firebase Summit で発表されたすべての情報をご覧ください。Firebase を使用してアプリ開発を加速し、自信を持ってアプリを実行する方法を紹介しています。詳細

パフォーマンスの問題に関するアラートを設定する

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

コードの変更やネットワーク リクエストによってアプリのパフォーマンスが低下している場合は、Performance Monitoring アラートを使用してプロジェクト メンバーに通知します。

イベントのパフォーマンスが設定されたしきい値を超えたときに通知する、アプリのアラートを設定およびカスタマイズできます。

何がアラートをトリガーしますか?

アプリの指標が、Firebase コンソールで指定したパーセンタイル (該当する場合) に対して定義したしきい値を超えると、アラートがトリガーされます。アラートは、アプリがリアルタイム対応の SDK バージョンを使用している場合にのみトリガーされます。

アプリ起動時間

アプリの開始時間のアラートを構成すると、次の条件がすべて当てはまる場合にアラートがトリガーされます。

  • Firebase は、過去 1 時間にアプリの最新バージョンの_app_startトレースのサンプルを 100 個以上記録しました。
  • _app_startトレースの期間が、過去 1 時間および構成されたパーセンタイルで、アプリの定義済みしきい値を超えました。
  • アプリの最新バージョンでは、同じしきい値に対して以前に発生したアラートはありませんでした。

カスタム コード トレース

カスタム コード トレース メトリックのアラートを構成すると、次の条件がすべて当てはまる場合にアラートがトリガーされます。

  • Firebase は、過去 1 時間にアプリの最新バージョンのカスタム コード トレースのサンプルを 100 個以上記録しました。
  • 過去 1 時間および構成されたパーセンタイルで、トレースの期間がアプリの定義済みしきい値を超えました。
  • (iOS+ および Android のみ) アプリの最新バージョンで同じしきい値に対して以前に発生したアラートはありませんでした。
  • (Web のみ) 過去3 日間に同じしきい値に対して以前に発生したアラートはありませんでした。

ネットワーク リクエスト

ネットワーク リクエスト メトリックのアラートを構成すると、次の条件がすべて当てはまる場合にアラートがトリガーされます。

  • Firebase は、過去 1 時間にアプリのすべてのバージョンで URL パターンに一致するサンプルを 100 個以上記録しました。
  • 過去 1 時間に、メトリックの集計値が定義されたしきい値を超えました。
    • 応答時間: 集計値が構成されたパーセンタイルの設定しきい値を超えました
    • 成功率: (iOS+/Android のみ) 集計値がすべてのユーザーで設定されたしきい値を下回りました
  • 過去3 日間に、同じしきい値に対して以前に発生したアラートはありませんでした。

画面のレンダリング

画面レンダリング メトリックのアラートを構成すると、次の条件がすべて当てはまる場合にアラートがトリガーされます。

  • Firebase は、過去 1 時間にアプリの最新バージョンの画面レンダリングのサンプルを少なくとも100 サンプル記録しました。
  • 過去 1 時間に、メトリックの集計値が定義されたしきい値を超えました。
    • フリーズ フレーム: 集計値が設定されたしきい値を超えました
    • 遅いフレーム: 集計値が設定されたしきい値を超えました
  • アプリの最新バージョンでは、同じしきい値に対して以前に発生したアラートはありませんでした。

ページの読み込み

ページ読み込みメトリックのアラートを構成すると、次の条件がすべて当てはまる場合にアラートがトリガーされます。

  • Firebase は、過去 1 時間にアプリのページ読み込みのサンプルを 100 個以上記録しました。
  • 過去 1 時間に、構成されたパーセンタイルで、メトリックの集計値が定義されたしきい値を超えました。
    • 最初の入力遅延: 集計値が設定されたしきい値と構成されたパーセンタイルを超えました
    • 最初のコンテンツ ペイント: 集計値が、設定されたしきい値と構成されたパーセンタイルを超えました
    • 最初のペイント: 集計値が設定されたしきい値と構成されたパーセンタイルを超えました
  • 過去3 日間に、同じしきい値に対して以前に発生したアラートはありませんでした。

アラートの構成、デフォルトのパーセンタイル、および特定のタイプのトレースとメトリックのアラートを設定するためのベスト プラクティスについて学習します。

他のパフォーマンス メトリックのアラート、またはSlackJira 、およびPagerDutyとの組み込みの Firebase 統合のアラートは、パフォーマンス モニタリング アラートでは使用できません。

アラートを受け取る

デフォルトのアラートを取得する

デフォルトでは、Firebase は Performance Monitoring アラートをメールで送信できます。

このデフォルト メカニズムを介して Performance Monitoring アラートを受信するには、 firebaseperformance.config.update権限が必要です。次のロールには、デフォルトでこの必要な権限が含まれています。

アラートとその設定はプロジェクト全体に適用されます。つまり、既定では、すべてのプロジェクト メンバー (電子メール グループではなく、アラートを受信するために必要な権限を持っている) は、パフォーマンス アラートがトリガーされたときに電子メールを受け取ります。

自分のアカウントのアラートをオン/オフにする

自分のアカウントについては、他のプロジェクト メンバーに影響を与えることなく、Performance Monitoring アラートをオン/オフにすることができます。アラートを受信するには、引き続き必要なアクセス許可が必要であることに注意してください。

Performance Monitoring アラートをオンまたはオフにするには、次の手順に従います。

  1. Firebase コンソールの右上隅にある Firebase アラートに移動します。
  2. 次に、[設定] に移動し、パフォーマンス モニタリング アラートのアカウント設定します。

サードパーティ サービスへの高度なアラートを設定する

Cloud Functions for Firebase を使用して、パフォーマンス モニタリング アラートをチームの優先通知チャネルに送信することもできます。たとえば、アプリの起動時間が遅いというアラート イベントをキャプチャし、そのアラート情報を Discord、Slack、Jira などのサードパーティ サービスに投稿する関数を作成できます。

Cloud Functions for Firebase を使用して高度なアラート機能を設定するには、次の手順に従います。

  1. Cloud Functions for Firebase をセットアップします。これには、次のタスクが含まれます。

    1. Node.js と npm をダウンロードします。
    2. Firebase CLI をインストールしてサインインします。
    3. Firebase CLI を使用して Cloud Functions for Firebase を初期化します。
  2. Performance Monitoring からアラート イベントをキャプチャし、イベント ペイロードを処理する関数を作成してデプロイします(たとえば、Discord のメッセージにアラート情報を投稿します)。

キャプチャできるすべてのパフォーマンス アラート イベントについては、パフォーマンス モニタリング アラートのリファレンス ドキュメントを参照してください。

無効なアラートの自動削除

Performance Monitoring はアラートを検証して、データが有効であり、アラートがアクティブに使用されていることを確認します。次のいずれかに該当する場合、アラートは有効と見なされます。

  • アラートは、Performance Monitoring が過去 90 日間にデータを受信したリソース ID に対して作成されます。
  • アラートはカスタム URL パターンに対して最近作成されました。カスタム URL パターンを作成してアラートを設定した後、90 日間はそのパターンのデータを送信できます。 90 日間の期間内にデータが送信されない場合、Performance Monitoring はそのアラートを削除します。カスタム URL パターンの詳細については、「顧客の URL パターンでデータを集計する」を参照してください。

これらの条件のいずれかが満たされない場合、Performance Monitoring はアラートを削除します。

アラートを構成する

Performance Monitoring アラートを設定するには、 firebaseperformance.config.update権限が必要です。 Firebase Performance AdminFirebase Quality AdminFirebase Admin 、および project Owner または Editorのロールには、この必要な権限がデフォルトで含まれています。

まだ行っていない場合は、最新の Performance Monitoring SDK をアプリに追加します。詳細については、ウェブAndroidApple 、およびFlutterプラットフォームのスタート ガイドを参照してください。

登録済みの各アプリで、トレース テーブルまたはダッシュボード レポート カードを使用して、監視する各メトリックのアラートを構成します。各アプリには、それぞれ異なるしきい値を持つ異なるアラート セットを設定できます (またはアラートをまったく設定しません)。

トレース テーブルでアラートを構成する

  1. Firebase コンソールの [Performance Monitoring Dashboard ] タブに移動し、アラートを構成するアプリを選択します。

  2. 画面下部の [トレース] テーブルまで下にスクロールします。

  3. アラートを設定するトレース タイプのタブを選択し、該当する行を見つけます。

  4. 行の右端で、オーバーフロー メニュー ( ) を開き、[アラート設定] を選択します。

  5. 画面の指示に従って、アプリのアラートのしきい値とパーセンタイル (該当する場合) を設定するか、アラートのオン/オフを切り替えます。デフォルトのパーセンタイルは、Android と iOS では 90 番目、Web では 75 番目です。デフォルトのパーセンタイルの詳細については、ダッシュボードで主要な指標を追跡するを参照してください。

ダッシュボード レポート カードでアラートを構成する

  1. Firebase コンソールの [Performance Monitoring Dashboard ] タブに移動し、アラートを構成するアプリを選択します。

  2. [レポート カード] タブで、アラートを構成するメトリック カードを見つけます。

  3. 目的のメトリック カードで、オーバーフロー メニュー ( ) を開き、 [アラート設定] を選択します。

  4. 画面の指示に従って、アプリのアラートのしきい値とパーセンタイル (該当する場合) を設定するか、アラートのオン/オフを切り替えます。デフォルトのパーセンタイルは、Android と iOS では 90 番目、Web では 75 番目です。デフォルトのパーセンタイルの詳細については、ダッシュボードで主要な指標を追跡するを参照してください。

パフォーマンス アラートを設定するためのベスト プラクティス

ネットワーク リクエスト

Firebase は、次のいずれかの URL パターンで同様のネットワーク リクエストからのデータを集約します。

  • カスタム URL パターンと呼ばれるユーザー定義のパターン。

  • 自動 URL パターンと呼ばれる Firebase 派生パターン。
    これらのパターンは、アプリの最新の使用状況に基づいて、時間の経過とともに変化する可能性があります。

カスタム URL パターンのアラートを設定する

構成したカスタム URL パターンのアラートを設定することをお勧めします。 Firebase は最初にリクエストをカスタム URL パターンと照合しようとするため、同様のリクエストはより一貫して同じ URL パターンにマッピングされます。これにより、特定のリクエスト パターンがアプリにとって重要であることが既に特定されているため、カスタム URL パターンのアラートがチームにとってより意味のある効果的なものになります。

自動 URL パターンのアラートを設定する

自動 URL パターンのアラートを設定する場合は、自動 URL パターンが数日間安定していることを確認してください。自動 URL パターンは時間の経過とともに変化する可能性があり、アラート構成は新しい URL パターンに引き継がれないことに注意してください。これにより、関心のあるパターンのアラートが正しくないか、欠落する可能性があります。カスタム URL パターンを作成して、このパターンが安定していることを確認することもできます。

ウェブページの読み込み

Web メトリックを測定するための推奨されるしきい値については、 Core Web Vitalsのドキュメントを参照してください。

画面のレンダリング

最適なアプリ エクスペリエンスを確保するには、ユーザー セッションに低速フレームやフリーズ フレームがないようにする必要があります。 Performance Monitoring では、フリーズ フレームが 1% を超える場合にアラートを設定し、スロー フレームが 5% を超える場合にアラートを設定することをお勧めします。これらの値は、パフォーマンス アラートの構成中にデフォルト設定として存在することがわかります。極端に遅いフレームやフリーズしたフレーム、およびその他のアプリ パフォーマンスのベスト プラクティスについて詳しくは、 Google Play のガイダンスをご覧ください。