无论您是刚刚开始开发应用,还是已经拥有成熟的正式版应用,都需要确保自己了解费用、知道如何避免意外的费用。
如需了解 Firebase 的结算方式,请参阅 Firebase 定价方案。
本页面向您介绍了解和监控使用量和支出水平的重要方面,包括:
测试您的代码
在将代码部署到生产环境之前执行测试是一种很好的做法,原因有很多,比如发现可能会耗费大量资金的错误。 在为应用构建基础架构时,我们强烈建议您先使用 Firebase Local Emulator Suite 在本地执行测试。
借助 Local Emulator Suite,您可以在桌面机器本地运行 Cloud Functions、Cloud Firestore、Realtime Database 及其他产品的实例。这不仅可以让您更轻松地快速迭代新功能(尤其是 Cloud Functions),还可以确保不会因在生产环境中测试服务而产生任何 Firebase 费用。
在测试时,请检查以下超出预期使用量和支出的常见原因:
忘记为包含数百万条结果的数据库查询添加限制
导致扇出工作负载过多甚至是造成无限循环的 Cloud Functions 组合
查看您的使用量和支出水平
您需要了解您的应用的正常使用模式,并确保其未超出重要阈值。
查看个别产品的使用量
对于许多产品,您都可以在其 Firebase 控制台的“用量”标签页中查看产品用量。
您可在这些信息中心内查看特定日期范围的数据。
产品级别信息中心适用于 Authentication 以及所有基础设施产品:Realtime Database、Cloud Firestore、Cloud Storage、Cloud Functions 和 Hosting。
查看整体项目使用量
您可以在 Firebase 控制台的“使用量和结算”信息中心(前往“项目设置”>“使用量和结算”)中查看项目的整体使用量。
您可以查看每月用量,以及您的用量水平相对于分配的免费用量配额的情况。
点击任一产品可查看每日使用量摘要,以及它的使用量水平相对于分配的免费使用量配额的情况。
请记住,每个产品的使用量配额不同,因此时间轴也有所不同,例如:
Cloud Firestore 和 Cloud Storage 的用量按天计算。
Cloud Functions 的使用量按月计算。
设置预算提醒电子邮件
通过在 Google Cloud Billing 中创建预算并设置预算提醒,避免产生意外费用。本部分介绍如何为 Firebase 项目执行这两项操作。
您可以设置简单的预算提醒,以便在项目超过设定的支出阈值时,系统向您和您的团队成员发送电子邮件通知。
如果您最近升级到了 Blaze 定价方案,那么您可能已经收到过预算提醒。但是,如果您想详细了解预算提醒、如何设置新提醒或修改现有提醒,那么本部分就是为您准备的!
如果您使用的是 Blaze 方案,请预算和预算提醒概览
预算是指您每月计划支出的常规金额。
只要项目的支出达到您设置的阈值,预算提醒功能就会发送一封电子邮件。预算提醒并不会为您的应用关闭相应服务或停止使用您的应用。
我们不会为您的应用关闭相应服务或停止使用您的应用,因为虽然有可能是因为您的应用中存在错误导致支出增加,但也有可能是您的应用出现了出乎意料的正增长。在这种情况下,您希望应用发挥最佳表现,而不是意外关停。
设置预算和简单的预算提醒
要设置预算或预算提醒,您必须是关联的 Cloud Billing 账号的 Owner。
前往 Google Cloud 控制台,访问您的项目,然后选择“结算”。
前往“预算和提醒”面板,然后完成以下步骤来设置预算和通过电子邮件发送的预算提醒:
选择现有预算或创建新预算。
为您的预算指定一个描述性的名称。
设置预算提醒的范围,包括您希望应用预算提醒的项目和服务。在开始使用预算提醒时,您可能想要选择“所有服务”。
在“金额”>“预算类型”中设置以下选项之一:
固定金额 (A set amount of money) - 在首次启动或测试应用时使用此类型
等于您的项目上个月支出的金额 (An amount equal to what your project spent last month) - 如果您的应用正在稳步增长,而且您不想每个月都更新预算金额,那么可以使用此类型
设置“预算百分比”提醒。
初始测试时,您可以尝试数个百分比,例如“实际值” (Actual) 的 1%、2%、5% 和 50%。
对于生产应用,您可以尝试几个关键百分比,例如“实际值” (Actual) 的 50% 和 100%,以及“预测值” (Predicted) 的 150%。
设置哪些人应该收到这些电子邮件。
默认情况下,具有适当结算权限的任何人(默认是相关 Cloud Billing 账号的 Billing Account Administrator 和 Billing Account User 角色)都会收到通知电子邮件。
您也可以向团队中的其他人发送电子邮件。这需要创建 Cloud Monitoring 工作区,然后将基于电子邮件的通知渠道添加到工作区的“提醒”部分。如需详细了解此设置,请访问设置高级结算提醒和逻辑。
如果您在设置通知时选择了较低的“预算百分比”(例如 1%),那么您在几小时或几天内就会收到一封电子邮件,告知您的项目已达到此阈值。
后续步骤
参阅设置高级结算提醒和逻辑,了解如何执行以下任务:
使用 Cloud Monitoring 创建更复杂的结算提醒和用量提醒,包括向其他媒介(如 Slack)发送通知的自定义提醒。
创建基于 Google Cloud Pub/Sub 的额外结算逻辑。