Firebase プロジェクトの管理の一環として、Realtime Database のリソース使用量 (接続しているユーザーの数、データベースが使用するストレージの量など) と、その使用量が請求にどのように影響しているかを確認する必要があります。
Realtime Database の請求使用量を確認するには、[使用量と請求] ダッシュボードを確認してください。課金の詳細については、 Realtime Database の課金についてをご覧ください。
リソースの使用状況については、Firebase コンソールのデータベースの [使用状況] タブと、Cloud Monitoring で利用できる指標の両方が、Realtime Database の使用状況を監視するのに役立ちます。
Firebase コンソール
現在の Realtime Database 接続とデータ使用量を確認するには、Firebase コンソールの [使用状況] タブを確認してください。現在の請求期間、過去 30 日間、または過去 24 時間の使用状況を確認できます。
Firebase は、次の指標の使用統計を表示します。
- 接続:データベースへの同時の、現在開かれているリアルタイム接続の数。これには、次のリアルタイム接続が含まれます: WebSocket、ロング ポーリング、および HTML サーバー送信イベント。 RESTful リクエストは含まれません。
- ストレージ:データベースに保存されているデータの量。これには、Firebase ホスティングや、他の Firebase 製品を通じて保存されたデータは含まれません。
- ダウンロード:データベースからダウンロードされたすべてのバイト (プロトコルと暗号化のオーバーヘッドを含む)。
- 負荷:このグラフは、指定された 1 分間にデータベースがどの程度使用され、リクエストを処理しているかを示します。データベースが 100% に近づくと、パフォーマンスの問題が発生する可能性があります。
さらに、Firebase コンソールは、Firebase セキュリティ ルール評価ダッシュボードを提供します。これは、ルールの呼び出しを一目で確認できる便利なビューです。 Cloud Monitoring での詳細な分析を使用して、このダッシュボードを補足できます。
詳細については、Cloud Monitoring でセキュリティ ルールを監視するをご覧ください。
クラウドモニタリング
使用状況の指標
Cloud Monitoring を使用して請求された使用量をモニタリングするには、次の指標を追跡します。すべての指標タイプの名前には、接頭辞としてfirebasedatabase.googleapis.com/
が付いていることに注意してください。
指標名 | 説明 |
---|---|
送信ペイロードバイト数 |
|
送信されたペイロードとプロトコルのバイト数 |
|
送信バイト数 | network/sent_bytes_count .このメトリクスは、読み取りによってデータベースから送信されるデータの合計サイズの見積もりを反映しています。これには、接続コストにつながるプロトコルと暗号化のオーバーヘッドに加えて、実際にクライアントに送信されるペイロード データが含まれます。これは、Realtime Database 請求書の送信帯域幅の合計を最も正確に反映しています。 |
合計バイト |
|
ダッシュボードのチャートでメトリクスを組み合わせて、有益な洞察と概要を得ることができます。たとえば、次の組み合わせを試してください。
- 送信データ:
network/sent_bytes_count
、network/sent_payload_and_protocol_bytes_count
、およびnetwork/sent_payload_bytes_count
メトリクスを使用して、請求書に予想外のコストがかかるプロトコルまたは暗号化オーバーヘッドの潜在的な問題を特定します。要求されたデータ ペイロードのサイズと、接続オーバーヘッドを反映するその他の指標との間に大きな相違がある場合は、タイムアウトや頻繁な接続につながる可能性がある問題をトラブルシューティングする必要があります。 TLS セッション チケットを使用していない場合は、TLS セッション チケットを実装して、再開された接続の SSL 接続のオーバーヘッドを削減してみてください。 - 操作:
io/database_load
メトリクスを使用して、データベースの総負荷のうち、各操作の種類で使用されている量を確認します。io/database_load
をタイプ別にグループ化して、さまざまな操作タイプのトラブルシューティングを行ってください。 - ストレージ:
storage/limit
とstorage/total_bytes
を使用して、Realtime Database のストレージ制限に関連するストレージ使用率を監視します。
Cloud Monitoring で使用できる Realtime Database 指標の完全なリストをご覧ください。
Cloud Monitoring ワークスペースを作成する
Cloud Monitoring で Realtime Database をモニタリングするには、プロジェクトのワークスペースを設定する必要があります。ワークスペースは、1 つ以上のプロジェクトからの監視情報を編成します。ワークスペースを設定したら、カスタム ダッシュボードとアラート ポリシーを作成できます。
プロジェクトがすでにワークスペースの一部である場合は、Cloud Monitoring ページが開きます。それ以外の場合は、プロジェクトのワークスペースを選択してください。
[新しいワークスペース] オプションを選択するか、既存のワークスペースを選択します。
[追加] をクリックします。ワークスペースが構築されると、Cloud Monitoring ページが開きます。
ダッシュボードを作成してグラフを追加する
Cloud Monitoring から収集された Realtime Database 指標を独自のグラフとダッシュボードに表示します。
続行する前に、プロジェクトがCloud Monitoring ワークスペースの一部であることを確認してください。
Cloud Monitoring ページでワークスペースを開き、[ダッシュボード]ページに移動します。
[ダッシュボードの作成]をクリックして、ダッシュボード名を入力します。
右上隅にある [ Add Chart ] をクリックします。
[グラフの追加]ウィンドウで、グラフのタイトルを入力します。 [メトリック] タブをクリックします。
[リソース タイプと指標の検索] フィールドに「 Firebase Realtime Database 」と入力します。自動入力されたドロップダウンから、Realtime Database 指標の 1 つを選択します。
同じグラフにさらにメトリックを追加するには、[メトリックの追加] をクリックして、前の手順を繰り返します。
オプションで、必要に応じてチャートを調整します。たとえば、[フィルター] フィールドで、[ + フィルターを追加] をクリックします。下にスクロールして、グラフをフィルタリングする対象の指標の値または範囲を選択します。
[保存]をクリックします。
Cloud Monitoring グラフの詳細については、グラフの操作をご覧ください。
アラート ポリシーを作成する
Realtime Database 指標に基づいてアラート ポリシーを作成できます。以下の手順に従って、特定の Realtime Database 指標が特定のしきい値に達するたびにメールを送信するアラート ポリシーを作成できます。
続行する前に、プロジェクトがCloud Monitoring ワークスペースの一部であることを確認してください。
Cloud Monitoring ページでワークスペースを開き、 [アラート]ページに移動します。
[ポリシーの作成]をクリックします。
アラート ポリシーの名前を入力します。
Realtime Database 指標の 1 つに基づいてアラート条件を追加します。 [条件を追加] をクリックします。
ターゲットを選択します。 [リソース タイプとメトリクスの検索]フィールドにRealtime Databaseと入力します。自動入力されたドロップダウンから、Realtime Database 指標の 1 つを選択します。
[ポリシー トリガー] で、ドロップダウン フィールドを使用してアラート条件を定義します。
通知チャネルをアラート ポリシーに追加します。 [通知]で、[通知チャネルの追加] をクリックします。ドロップダウン メニューから [メール] を選択します。
電子メール アドレスフィールドに電子メールを入力します。 [追加] をクリックします。
必要に応じて、ドキュメント フィールドに入力して、電子メール通知に追加情報を含めます。
[保存]をクリックします。
Realtime Database の使用量が設定されたしきい値を超えると、メール アラートが送信されます。
アラート ポリシーの詳細については、「アラートの概要」を参照してください。