使用状況のモニタリング

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

Firebase コンソール

Firebase コンソールには、Cloud Firestore の読み取り、書き込み、削除の推移を示す使用状況ダッシュボードがあります。

[使用状況] ページに移動

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

Google Cloud Platform Console

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

[割り当て] ページに移動

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

Stackdriver Monitoring

Stackdriver Monitoring は、GCP プロダクトから指標、イベント、メタデータを収集します。これらの情報を使用してダッシュボード、グラフ、アラートが生成されます。

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

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

ドキュメントの読み取りの成功回数。読み取りのタイプ(LOOKUP または QUERY)でこの指標を分類できます。

この指標には、マネージド エクスポート オペレーションによる読み取りは含まれません。

ドキュメントの書き込み

ドキュメントの書き込みの成功回数。書き込みのタイプ(CREATE または UPDATE)でこの指標を分類できます。

この指標には、マネージド インポート オペレーションによる書き込みは含まれません。

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

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

アクティブなモバイル SDK とウェブ SDK はそれぞれ接続を 1 つ維持し、その接続は複数のスナップショット リスナー間で共有できます。サーバー クライアント ライブラリは、スナップショット リスナーごとに 1 つの接続を作成します。

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

すべてのアクティブな接続全体でのスナップショット リスナーの数。

リアルタイム アップデートの使用状況

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

たとえば、ユーザーがスマートフォン上でアプリを開くとします。するとアプリは Cloud Firestore に接続し、10 個のクエリにサブスクライブします。これにより、アクティブな接続の指標は 1、スナップショット リスナーの指標は 10 増加します。

サンプリング レート

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

これらの指標を使用して、Cloud Firestore ダッシュボードを次のように設定できます。

Stackdriver Monitoring ダッシュボードでの Cloud Firestore の使用状況。

Stackdriver Monitoring を使用して Cloud Firestore のモニタリングを開始するには、次の手順を行います。

Stackdriver ワークスペースの作成

Stackdriver Monitoring を使用して Cloud Firestore をモニタリングするには、プロジェクト用に Stackdriver ワークスペースを設定する必要があります。ワークスペースは、1 つ以上のプロジェクトから得られるモニタリング情報を組織化します。ワークスペースを設定したら、カスタムのダッシュボードとアラート ポリシーを作成できます。

プロジェクトがすでにワークスペースに含まれている場合、以下の手順はスキップしてください。

  1. Stackdriver コンソールでワークスペースを作成する

    GCP プロジェクト ID を入力し、[Create workspace] をクリックします。

  2. 必要に応じて、同じワークスペースでモニタリングする追加のプロジェクトを選択します。[Continue] をクリックします。

  3. AWS アカウントの追加と Stackdriver エージェントのインストールの手順はスキップします。これらの手順は、Cloud Firestore のモニタリングには必要ありません。[Continue] をクリックします。

  4. メールレポートの設定を構成します。[Continue] をクリックします。

  5. [Launch Monitoring] をクリックします。

ダッシュボードを作成してグラフを追加する

Stackdriver Monitoring で収集された Cloud Firestore の指標を、独自のグラフやダッシュボードに表示します。

続行する前に、プロジェクトが Stackdriver ワークスペースに含まれていることを確認してください。

  1. Stackdriver コンソールで、ワークスペースを開き、[Dashboards] > [Create dashboard] に移動します。

    [Create Dashboard] ページに移動

  2. 右上隅にある [Add Chart] をクリックします。

  3. [Add Chart] ウィンドウで、[Metric] タブをクリックします。

  4. [Find resource type and metric] フィールドに「Cloud Firestore」と入力します。情報が自動入力されているプルダウンから、Cloud Firestore の指標の 1 つを選択します。

  5. 同じグラフに指標を追加するには、[Add Metric] をクリックし、上記の手順を繰り返します。

  6. 必要に応じて、グラフを調整します。たとえば、[Filter] フィールドで [+ Add a filter] をクリックします。スクロールして、グラフのフィルタリングを適用する指標の値または範囲を選択します。

  7. [Save] をクリックします。

Stackdriver Monitoring のグラフの詳細については、グラフの操作をご覧ください。

アラート ポリシーの作成

Cloud Firestore の指標に基づいてアラート ポリシーを作成できます。次の手順に沿って、特定の Cloud Firestore の指標が特定のしきい値に到達するとメールで通知するアラート ポリシーを作成できます。

続行する前に、プロジェクトが Stackdriver ワークスペースに含まれていることを確認してください。

  1. Stackdriver コンソールで、ワークスペースを開き、[Alerting] > [Create a Policy] に移動します。

    [Create New Alerting Policy] ページに移動

  2. Cloud Firestore のいずれかの指標に基づくアラートの条件を追加します。[Add Condition] をクリックします。

  3. [Target] を選択します。[Find resource type and metric] フィールドに「Cloud Firestore」と入力します。データが自動入力されるプルダウンから、Cloud Firestore の指標の 1 つを選択します。

  4. [Configuration] で、プルダウン フィールドを使用して、アラートの条件を定義します。

  5. [Save] をクリックします。

  6. アラート ポリシーに通知チャネルを追加します。[Notifications] の [Notification Channel Type] から [Email] を選択します。

  7. [Email address] フィールドにメールアドレスを入力します。[Add Notification Channel] をクリックします。

  8. 必要に応じて、ドキュメントのフィールドに情報を入力します。この情報は、メール通知に追加情報として付加されます。

  9. [Name this policy] でアラート ポリシーの名前を入力します。

  10. [Save] をクリックします。

Cloud Firestore の使用量が構成済みのしきい値を超えると、メールによるアラートが届きます。Cloud Firestore のアラートメールの例。

アラート ポリシーの詳細については、通知の概要をご覧ください。

次のステップ