Firebase Summit のすべての発表内容に目を通し、Firebase を活用してアプリ開発を加速し、自信を持ってアプリを実行できる方法をご確認ください。 詳細

CloudFirestoreのアクティビティを監視する

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

このページでは、Cloud Firestore の使用状況をモニタリングし、アプリの潜在的な問題を特定する方法について説明します。アプリの使用状況を確認することで、請求額を予測することもできます。さらに、何かがおかしいと思われる場合は、データベースの操作を明確に把握することがトラブルシューティング ツールとして役立ちます。

使用状況ダッシュボード

Google Cloud Platform コンソールと Firebase コンソールには、ドキュメントの読み取り、書き込み、削除を経時的に表示する Cloud Firestore の使用状況ダッシュボードが含まれています。

GCP コンソール

Cloud Firestore の使用状況ページ (GCP コンソール) に移動します。

GCP Console の Cloud Firestore 使用状況ダッシュボード。

アクセス制御

使用状況ダッシュボードには、 monitoring.timeSeries.list Cloud IAM 権限が必要です。プロジェクト所有者、編集者、および閲覧者の役割は、この権限を付与します。 Cloud Monitoring の役割またはカスタムの役割を介してこの権限を付与することもできます。

Firebase コンソール

Cloud Firestore の使用状況ページに移動します (Firebase コンソール)

Firebase コンソールの Cloud Firestore 使用状況ダッシュボード。

使用状況ダッシュボードと請求レポート

Firebase および Cloud コンソールの Cloud Firestore 使用状況ダッシュボードは、使用量の見積もりを提供します。使用量の急増を特定するのに役立ちます。ただし、ダッシュボードは請求対象の操作を正確に表示するものではありません。請求された使用量はおそらく高くなります。不一致の場合は常に、請求レポートが使用状況ダッシュボードよりも優先されます。

使用量ダッシュボードと請求された使用量の間で不一致を引き起こす操作には、次のものがあります。

  • インポートおよびエクスポート操作。これらの操作によって実行される読み取りと書き込みは、使用状況ダッシュボードに表示されません。
  • ノーオペレーション書き込み。フィールド値を変更しない更新や、削除されたドキュメントへの書き込みなど、データベースに変更をもたらさない操作は、請求対象の操作に含まれます。ただし、使用状況ダッシュボードはこれらの操作をカウントしません。
  • 折りたたまれた書き込み。同じドキュメントへの複数の書き込みが立て続けに行われた場合、使用状況ダッシュボードは複数の書き込みをまとめて 1 つとしてカウントすることがあります。使用量を請求する場合、各書き込みは引き続き個別にカウントされます。

    使用状況ダッシュボードでは、サーバーのタイムスタンプ、数値の増分、配列の結合操作などのフィールド変換の書き込みも折りたたまれます。フィールド変換の場合、使用状況ダッシュボードは複数の操作を 1 つの操作としてカウントする場合があります。

  • ゼロの結果を返すクエリ。結果がゼロのクエリでは、1 回の読み取り操作のコストが発生します。この使用量は課金されますが、使用量ダッシュボードには表示されません。
  • COUNT などの集計クエリに関連付けられた読み取り操作。この使用量は課金されますが、使用量ダッシュボードには表示されません。

セキュリティ ルールの使用

さらに、Firebase コンソールは、セキュリティ ルール評価ダッシュボードを提供します。これは、ルールの呼び出しを一目で確認できる便利なビューです。 Cloud Monitoringの詳細な分析でこのダッシュボードを補足できます。

ルールページへ

Firebase コンソールの Cloud Firestore ルール モニタリング ダッシュボード。

1 日の割り当て

Firebase プロジェクトを作成すると、Google Cloud にもプロジェクトが作成されます。 GCP Console のApp Engine 割り当てページでは、読み取り、書き込み、インデックスの書き込み、削除、保存データ、ネットワーク エグレスなど、毎日の Cloud Firestore の使用情報を追跡します。

割り当てページに移動

App Engine の割り当てページでの Cloud Firestore の使用状況。

クラウドモニタリング

Cloud Monitoringは、Google Cloud プロダクトから指標、イベント、メタデータを収集します。 Cloud Firestore コンソールの使用状況ダッシュボードは、同じ指標データを報告します。カスタム ダッシュボードと使用状況アラートを設定するには、Cloud Monitoring を使用します。

Cloud Monitoring には、次の Cloud Firestore 指標が含まれています。

指標名説明
ドキュメント読み取り

成功したドキュメント読み取りの数。このメトリックは、読み取りのタイプ (LOOKUP または QUERY) で分類できます。

このメトリックには、マネージド エクスポート オペレーションからの読み取りは含まれません。

ドキュメントの書き込み

成功したドキュメント書き込みの数。メトリクスは、書き込みの種類 (CREATE または UPDATE) で分類できます。

このメトリクスには、マネージド インポート オペレーションからの書き込みは含まれません。

ドキュメントの削除成功したドキュメントの削除の数。
アクティブな接続

データベースへのアクティブな接続の数。

アクティブな各モバイルおよび Web SDKは、複数のスナップショット リスナー間で共有できる単一の接続を維持します。サーバー クライアント ライブラリは、スナップショット リスナーごとに 1 つの接続を作成します。

スナップショット リスナー

すべてのアクティブな接続にわたるスナップショット リスナーの数。

Time-to-Live 削除カウント

Time-to-Live (TTL) ポリシーによって削除されたドキュメントの総数。

Time-to-Live の有効期限から削除までの遅延

Time -to-live (TTL) ポリシーの下でドキュメントの有効期限が切れてから、実際に削除されるまでの経過時間。

リアルタイム更新の使用

アクティブな接続とスナップショット リスナーのメトリックを使用して、リアルタイム更新の使用状況を測定します。

ユーザーがスマートフォンでアプリを開いたとします。その後、アプリは Cloud Firestore に接続し、10 個のクエリをサブスクライブします。これにより、メトリクスが 1 つのアクティブな接続と 10 のスナップショット リスナーによって増加します。

サンプリングレート

Cloud Firestore の指標は 1 分ごとにサンプリングされますが、更新がダッシュボードに表示されるまでに最大 4 分かかる場合があります。

Cloud Monitoring ダッシュボードを設定する

Cloud Firestore 指標を使用してダッシュボードを設定するには、カスタム ダッシュボードの管理ダッシュボード ウィジェットの追加を参照してください。

次は何ですか