您可能会由于多种原因而收到配额错误,例如超出配额值或未正确设置项目配额。如果您希望在出现错误时收到提醒,则可以针对特定配额错误创建自定义提醒,如设置配额提醒中所述。
超出速率配额
速率配额会在特定于每个服务的预定义时间间隔后重置。如需了解详情,请参阅特定服务的配额文档。
超出配额值
如果您的项目在使用服务时超过了其最大配额值,Google Cloud 会根据您访问该服务的方式返回错误:
- 如果在发出 API 请求时超出了配额值,Google Cloud 会返回 HTTP
413 REQUEST ENTITY TOO LARGE
状态代码。请注意,在生产环境中使用 BigQuery 旧版流式 API 时,如果您的 HTTP 请求大于 10 MB,您可能会收到413 REQUEST ENTITY TOO LARGE
状态代码。如果每秒超过 300 MB,也可能会收到此错误。如需了解详情,请参阅流式插入。 - 如果在发出 HTTP/REST 请求时超出了配额值,Google Cloud 会返回 HTTP
429 TOO MANY REQUESTS
状态代码。 - 如果超过了 Compute Engine 的配额,Google Cloud 通常会返回 HTTP
403 QUOTA_EXCEEDED
状态代码,无论它是来自 API、HTTP/REST 还是来自 gRPC。如果配额是速率配额,则返回403 RATE_LIMIT_EXCEEDED
。 - 如果在使用 gRPC 时超出配额值,Google Cloud 会返回
ResourceExhausted
错误。此错误的显示方式取决于该服务。 - 如果在使用 Google Cloud CLI 命令时超出配额值,gcloud CLI 会输出“已超出配额”错误消息并返回退出代码
1
。 - 如果您在服务发布期间收到
QUOTA_EXCEEDED
消息,请参阅以下部分。
在服务发布期间超出配额值
Google Cloud 有时会更改资源和 API 的默认配额值。这些更改逐步进行,这意味着在发布新的默认配额期间,Google Cloud 控制台中显示的配额值可能无法反映您可以使用的新配额值。
如果配额发布正在进行,您可能会收到一条错误消息,其内容为 The future limit is the new default quota that will be available after a
service rollout completes.
。如果您看到此错误消息,则表示引用的配额值和未来值正确无误,即使出现在 Google Cloud 控制台中的内容有所不同。
如需了解详情,请查看审核日志并查找
QUOTA_EXCEEDED
消息。"status": { ... "message": "QUOTA_EXCEEDED", "details": [ { ... "value": { "quotaExceeded": { ... "futureLimit": FUTUREVALUE } } } ] },
如需查看显示当前用量和峰值用量的图表,请前往配额和系统限制页面,然后点击 Monitoring。您可能需要转到表末尾。
如果您需要更多配额,可以申请配额调整。
API 错误消息
如果配额项目(也称为结算项目)未正确设置,API 请求可能会返回如下所示的错误消息:
User credentials not supported by this API
API not enabled in the project
No quota project set
这些错误和其他错误通常可以通过设置配额项目来解决。如需了解详情,请参阅配额项目概览。
gcloud CLI 错误
如果您尚未设置配额项目,Google Cloud CLI (gcloud CLI) 命令可能会返回如下错误:
PERMISSION_DENIED: Your application is authenticating by using local Application Default Credentials.
The cloudquotas.googleapis.com API requires a quota project, which is not set by default.
如需解决此问题,请在 gcloud CLI 命令中添加 --billing-project
标志以明确设置配额项目,或重新运行 gcloud config set billing/quota_project CURRENT_PROJECT
以将配额项目设置为当前项目。
详情请参阅以下内容:
- 以编程方式设置配额项目
- 通过 gcloud CLI 设置结算项目