コードの変更やネットワークリクエストによってアプリのパフォーマンスが低下している場合は、パフォーマンスモニタリングアラートを使用してプロジェクトメンバーに通知します。
アプリのアラートを設定およびカスタマイズできます。アラートは、イベントのパフォーマンスが設定されたしきい値を超えたときに通知します。
何がアラートをトリガーしますか?
アプリの指標が、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日間 に、同じしきい値に対して以前に発生したアラートはありませんでした。
アラートの構成、デフォルトのパーセンタイル、および特定のタイプのトレースとメトリックのアラートを設定するためのベストプラクティスの詳細をご覧ください。
他のパフォーマンスメトリクスのアラート、またはSlack 、 Jira 、 PagerDutyとの組み込みのFirebase統合のアラートは、パフォーマンスモニタリングアラートでは使用できません。
アラートを受信する
パフォーマンス監視アラートは、電子メール通知を介して送信されます。
パフォーマンス監視アラートを受信するには、 firebaseperformance.config.update
権限が必要です。次の役割には、デフォルトでこの必要な権限が含まれています。
アラートとその設定はプロジェクト全体です。これは、デフォルトでは、アラートがトリガーされたときに、すべてのプロジェクトメンバー(アラートを受信するために必要な権限を持っている)が電子メール通知を受け取ることを意味します。
Performance Monitoringはアラートを検証して、データが有効であり、アラートがアクティブに使用されていることを確認します。次のいずれかに該当する場合、アラートは有効と見なされます。
- アラートは、パフォーマンスモニタリングが過去90日間にデータを受信したリソースIDに対して作成されます。
- アラートは、カスタムURLパターンに対して最近作成されました。カスタムURLパターンを作成してアラートを設定した後、90日以内にそのパターンのデータを送信できます。 90日の期間内にデータが送信されない場合、パフォーマンスモニタリングはそのアラートを削除します。カスタムURLパターンの詳細については、「顧客URLパターンの下のデータの集約」を参照してください。
これらの条件のいずれかが満たされない場合、パフォーマンスモニタリングはアラートを削除します。
自分のアカウントのアラートをオン/オフにします
自分のアカウントの場合、他のプロジェクトメンバーに影響を与えることなく、パフォーマンス監視アラートをオン/オフにすることができます。アラートを受信するには、引き続き必要な権限が必要であることに注意してください。
Firebaseコンソールの右上隅にある[ Firebaseアラートの
]>[ ]に移動し、パフォーマンスモニタリングアラートのアカウント設定を設定します。アラートを構成する
パフォーマンス監視アラートを構成するには、 firebaseperformance.config.update
権限が必要です。次の役割には、デフォルトでこの必要な権限が含まれています: Firebase Performance Admin 、 Firebase Quality Admin 、 Firebase Admin 、およびプロジェクトの所有者または編集者。
まだ行っていない場合は、最新のPerformanceMonitoringSDKをアプリに追加します。詳細については、 Web 、 Android 、 Apple 、およびFlutterプラットフォームのスタートガイドを参照してください。
登録されている各アプリで、トレーステーブルまたはダッシュボードレポートカードを使用して、監視する各メトリックのアラートを構成します。各アプリには、それぞれ異なるしきい値を持つ(またはアラートがまったくない)異なるアラートのセットを含めることができます。
トレーステーブルでアラートを構成します
Firebaseコンソールの[パフォーマンスモニタリングダッシュボード]タブに移動し、アラートを設定するアプリを選択します。
画面下部の[トレース]テーブルまで下にスクロールします。
アラートを設定するトレースタイプのタブを選択し、該当する行を見つけます。
行の右端で、オーバーフローメニュー(
)を開き、[アラート設定]を選択します。画面の指示に従って、アプリのアラートしきい値とパーセンタイル(該当する場合)を設定するか、アラートをオン/オフにします。デフォルトのパーセンタイルは、AndroidとiOSの場合は90番目、Webの場合は75番目です。デフォルトのパーセンタイルの詳細については、ダッシュボードの主要なメトリックの追跡を参照してください。
ダッシュボードレポートカードでアラートを構成する
Firebaseコンソールの[パフォーマンスモニタリングダッシュボード]タブに移動し、アラートを設定するアプリを選択します。
[レポートカード]タブで、アラートを構成するメトリックカードを見つけます。
目的のメトリックカードで、オーバーフローメニュー(
)を開き、[アラート設定]を選択します。画面の指示に従って、アプリのアラートしきい値とパーセンタイル(該当する場合)を設定するか、アラートをオン/オフにします。デフォルトのパーセンタイルは、AndroidとiOSの場合は90番目、Webの場合は75番目です。デフォルトのパーセンタイルの詳細については、ダッシュボードの主要なメトリックの追跡を参照してください。
パフォーマンスアラートを設定するためのベストプラクティス
ネットワークリクエスト
Firebaseは、類似のネットワークリクエストからのデータをURLパターンで集約します。URLパターンは次のいずれかになります。
カスタムURLパターンと呼ばれるユーザー定義のパターン。
自動URLパターンと呼ばれるFirebaseから派生したパターン。
これらのパターンは、アプリの最新の使用動作に基づいて時間の経過とともに変化する可能性があります。
カスタムURLパターンのアラートを設定する
構成したカスタムURLパターンに対してアラートを設定することをお勧めします。 Firebaseは最初にリクエストをカスタムURLパターンに一致させようとするため、同様のリクエストはより一貫して同じURLパターンにマッピングされます。これにより、カスタムURLパターンのアラートがチームにとってより意味があり、効果的になります。これは、特定のリクエストパターンがアプリにとって重要であることがすでに特定されているためです。
自動URLパターンのアラートを設定する
自動URLパターンのアラートを設定するときは、自動URLパターンが数日間安定していることを確認してください。自動URLパターンは時間の経過とともに変化する可能性があり、アラート構成は新しいURLパターンに引き継がれないことに注意してください。これにより、気になるパターンのアラートが正しくないか、欠落する可能性があります。このパターンが安定していることを確認するために、カスタムURLパターンの作成を検討することもできます。
Webページが読み込まれます
Webメトリックを測定するための推奨しきい値については、 CoreWebVitalsのドキュメントを参照してください。
画面レンダリング
最適なアプリエクスペリエンスを確保するには、ユーザーセッションに低速でフリーズしたフレームがないようにする必要があります。 Performance Monitoringでは、1%を超えるフリーズフレームに対してアラートを設定し、5%を超える低速フレームに対してアラートを設定することをお勧めします。これらの値は、パフォーマンスアラートの構成時にデフォルト設定として存在することがわかります。過度に遅いフレームやフリーズしたフレーム、およびその他のアプリパフォーマンスのベストプラクティスについて詳しくは、 GooglePlayのガイダンスをご覧ください。