Firebase プロジェクトの管理の一環として、Realtime Database のリソースの使用状況(接続ユーザー数、データベースのストレージ使用量など)と請求に対する影響を確認する必要があります。
Realtime Database の課金対象使用量を確認するには、使用量と請求額ダッシュボードを確認します。課金について詳しくは、Realtime Database の課金についてをご覧ください。
リソースの使用状況については、Firebase コンソールのデータベースの [使用状況] タブと Cloud Monitoring で利用可能な指標の両方を使用して、Realtime Database の使用状況をモニタリングできます。
Firebase コンソール
現在の Realtime Database の接続数とデータ使用量を確認するには、Firebase コンソールの [使用状況] タブを表示します。このタブでは、現在の請求期間、過去 30 日間、過去 24 時間の使用状況をそれぞれ確認できます。
次の指標に関する使用統計情報が表示されます。
- 接続: データベースに対して現在開いている同時リアルタイム接続数。WebSocket、ロング ポーリング、HTML サーバー送信イベントといったリアルタイム接続が含まれます。RESTful リクエストは含まれません。
- ストレージ: データベースに保存されているデータ量。Firebase ホスティングや、その他の Firebase プロダクトを使用して保存したデータは含まれません。
- ダウンロード: データベースからダウンロードされたすべてのバイト数で、プロトコルや暗号化のオーバーヘッドも含まれます。
- 読み込み: このグラフは、該当する 1 分の間隔で、データベースがリクエストの処理にどれだけ使用されているかを示します。データベースが 100% に近づくと、パフォーマンスの問題が発生することがあります。
Firebase コンソールの Realtime Database ルールのモニタリング ダッシュボード。">
Firebase コンソールには Firebase Security Rules 評価ダッシュボードも用意されており、ルールの呼び出しを一目で確認できます。Cloud Monitoring の詳細な分析でこのダッシュボードの情報を補足できます。
詳細については、Cloud Monitoring でセキュリティ ルールをモニタリングするをご覧ください。
Firebase コンソールの Realtime Database の使用状況ダッシュボード。">
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 セッション チケットを使用していない場合は、それらを実装することで、再開された接続の 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 ページでワークスペースを開き、[ダッシュボード] ページに移動します。
[Create Dashboard] をクリックし、ダッシュボードの名前を入力します。
右上隅にある [グラフを追加] をクリックします。
[グラフを追加] ウィンドウで、グラフのタイトルを入力します。[Metric] タブをクリックします。
[Find resource type and metric] フィールドに「Firebase Realtime Database」と入力します。情報が自動入力されているプルダウンから、Realtime Database 指標の 1 つを選択します。
同じグラフに指標を追加するには、[指標を追加] をクリックし、上述の手順を繰り返します。
必要に応じて、グラフを調整します。たとえば、[Filter] フィールドで [+ Add a filter] をクリックします。スクロールして、グラフのフィルタリングを適用する指標の値または範囲を選択します。
[保存] をクリックします。
Cloud Monitoring グラフの詳細については、グラフの操作をご覧ください。
アラート ポリシーを作成する
Realtime Database の指標に基づいてアラート ポリシーを作成できます。 次の手順に沿って、特定の Realtime Database の指標が特定のしきい値に到達するとメールで通知するアラート ポリシーを作成できます。
続行する前に、プロジェクトが Cloud Monitoring ワークスペースに含まれていることを確認してください。
Cloud Monitoring ページでワークスペースを開き、[Alerting] ページに移動します。
[Create Policy] をクリックします。
アラート ポリシーの名前を入力します。
Realtime Database のいずれかの指標に基づくアラートの条件を追加します。 [ADD CONDITION] をクリックします。
[Target] を選択します。[Find resource type and metric] フィールドに「Realtime Database」と入力します。情報が自動入力されているプルダウンから、Realtime Database 指標の 1 つを選択します。
[Policy triggers] で、プルダウン フィールドを使用してアラート条件を定義します。
アラート ポリシーに通知チャンネルを追加します。[Notifications] で [Add Notification Channel] をクリックします。プルダウン メニューから [Email] を選択します。
[Email address] フィールドにメールアドレスを入力します。[Add] をクリックします。
必要に応じて、ドキュメントのフィールドに情報を入力します。この情報は、メール通知に追加情報として付加されます。
[保存] をクリックします。
Realtime Database の使用量が構成済みのしきい値を超えると、メール通知アラートが届きます。
アラート ポリシーの詳細については、アラートの概要をご覧ください。