アプリの開発を始めたばかりでも、本格的な本番アプリを使用している場合でも、コストと予想外の請求を回避する方法を確実に理解する必要があります。
まだお済みでない場合は、 Firebaseの料金プランを確認して、Firebaseの課金がどのように機能するかを理解してください。
このページでは、次のような使用量と支出レベルを理解および監視するための重要な側面について説明します。
コードをテストする
本番環境にデプロイする前にコードをテストすることは、多額の費用がかかる可能性のあるエラーをキャッチするなど、多くの理由から優れたアイデアです。アプリのインフラストラクチャを構築しているため、最初にFirebase LocalEmulatorSuiteを使用してローカルでテストすることを強くお勧めします。
Local Emulator Suiteを使用すると、Cloud Functions、Cloud Firestore、RealtimeDatabaseなどのインスタンスをすべてデスクトップマシンでローカルに実行できます。これにより、新しい機能、特にCloud Functionsをすばやく簡単に繰り返すことができるだけでなく、本番環境でのサービスに対するテストの結果として発生する可能性のあるFirebaseのコストが発生しなくなります。
テストするときは、予想される使用量と支出を超える一般的な原因を確認してください。
何百万もの結果を持つデータベースクエリに制限を追加するのを忘れている
過度のファンアウトワークロードまたは無限のループを引き起こすクラウド機能の組み合わせ
使用量と支出レベルを表示する
アプリの通常の使用パターンがどのように見えるかを把握し、重要なしきい値の範囲内にとどまっていることを確認する必要があります。
個々の製品の使用状況を表示する
Firebaseコンソールの多くの製品の[使用状況]タブで、個々の製品の使用状況を確認できます。
これらのダッシュボードで特定の日付範囲を表示できます。
製品レベルのダッシュボードは、認証およびすべてのインフラストラクチャ製品( Realtime Database 、 Cloud Firestore 、 Cloud Storage 、 Cloud Functions 、およびHosting )で使用できます。
プロジェクト全体の使用状況を表示する
プロジェクトの全体的な使用状況は、Firebaseコンソールの[使用状況と請求]ダッシュボードで確認できます( [プロジェクトの設定] > [使用状況と請求]に移動します)。
毎月の使用量と、使用量レベルが割り当てられた無料の使用量クォータまでどのように測定されているかを確認できます。
製品をクリックして、使用量の毎日の要約と、割り当てられた無料の使用量の割り当てまでの測定方法を確認します。
各製品には異なる使用割り当てがあり、したがって異なるタイムラインがあることに注意してください。次に例を示します。
CloudFirestoreとCloudStorageの使用量は毎日計算されます。
CloudFunctionsの使用量は毎月計算されます。
予算アラートメールを設定する
Google Cloud Billingで予算を作成し、予算アラートを設定することで、請求額の予想外の事態を回避します。このセクションでは、Firebaseプロジェクトでこれらの両方を行う方法について説明します。
プロジェクトが設定された支出しきい値を超えたときに、あなたとチームメートに電子メール通知を送信する簡単な予算アラートを設定できます。
最近Blazeの料金プランにアップグレードした場合は、すでに予算アラートが表示されている可能性があります。ただし、予算アラートについて詳しく知りたい場合、新しいアラートを設定したい場合、または既存のアラートを変更したい場合は、このセクションが最適です。
予算と予算アラートの概要
予算は、毎月の支出を計画している一般的な金額です。
プロジェクトの支出レベルが設定したしきい値に達すると、予算アラートが電子メールを送信します。予算アラートは、アプリのサービスや使用をオフにしません。
アプリにバグがあり、支出が増加している可能性があるものの、アプリが予期せずプラス成長している可能性があるため、サービスと使用をオフにしません。最も機能する必要があるときに、アプリが予期せずシャットダウンすることは望ましくありません。
予算と簡単な予算アラートを設定する
予算または予算アラートを設定するには、関連付けられたCloudBillingアカウントの所有者である必要があります。
Google Cloud Consoleに移動し、プロジェクトにアクセスして、[ Billing]を選択します。
[予算とアラート]パネルに移動し、次の手順を実行して、予算と電子メールによる予算アラートを設定します。
既存の予算を選択するか、新しい予算を作成します。
予算にわかりやすい名前を付けます。
予算アラートを適用するプロジェクトやサービスなど、予算アラートの範囲を設定します。予算アラートを開始するときは、おそらく[すべてのサービス]を選択することをお勧めします。
次のいずれかのオプションを使用して、[金額]>[予算]タイプを設定します。
一定の金額–アプリを最初に開始またはテストするときに、このタイプを使用します
プロジェクトが先月費やした金額と同じ–アプリが着実に成長していて、毎月予算額を更新し続けたくない場合は、このタイプを使用してください
予算アラートの割合を設定します。
最初のテストでは、実際の1%、2%、5%、50%などのいくつかのパーセンテージを試してください。
本番アプリの場合は、実際の50%と100%、予測の150%などの重要なパーセンテージを試してください。
メールを受信するユーザーを設定します。
デフォルトでは、適切な請求権限を持っている人は誰でも通知メールを受け取ります(デフォルトでは、関連付けられたクラウド請求アカウントの請求アカウント管理者と請求アカウントユーザー)。
チームの他の人にメールを送信することもできます。これには、Cloud Monitoringワークスペースを作成してから、ワークスペースの[アラート]セクションに電子メールベースの通知チャネルを追加する必要があります。この設定の詳細については、高度な請求アラートとロジックの設定をご覧ください。
予算の割合が低い場合(1%など)に通知を設定した場合は、プロジェクトがそのしきい値に達したことを通知するメールが数時間または数日以内に届くはずです。
次のステップ
次の方法については、高度な請求アラートとロジックの設定をご覧ください。
Cloud Monitoringを使用して、Slackなどの他のメディアに通知を送信するカスタムアラートなど、請求と使用に関するより高度なアラートを作成します。
Google Cloud Pub/Subに基づいて追加の課金ロジックを作成します。