描述配额检查失败的方式。
例如,如果调用项目的每日限额被超出,服务可能会返回一个 QuotaFailure 详情,其中包含项目 ID 和超出限额的说明。如果调用项目尚未在开发者控制台中启用该服务,则服务可能会以项目 ID 进行响应,并将 service_disabled 设置为 true。
另请参阅 RetryInfo 和 Help 类型,了解有关处理配额失败的其他详细信息。
| JSON 表示法 |
|---|
{
"violations": [
{
object ( |
| 字段 | |
|---|---|
violations[] |
描述所有配额违规情况。 |
违规
用于描述单个配额违规情况的消息类型。例如,超出每日配额或自定义配额。
| JSON 表示法 |
|---|
{ "subject": string, "description": string, "apiService": string, "quotaMetric": string, "quotaId": string, "quotaDimensions": { string: string, ... }, "quotaValue": string, "futureQuotaValue": string } |
| 字段 | |
|---|---|
subject |
配额检查失败的主题。例如,“clientip: |
description |
配额检查失败方式的说明。客户端可以使用此说明在服务的公开文档中详细了解配额配置,或通过开发者控制台找到相关配额限制进行调整。 例如:“服务已停用”或“超出读取操作的每日限额”。 |
apiService |
例如,如果调用的 API 是 Kubernetes Engine API (container.googleapis.com),并且 Kubernetes Engine API 本身发生了配额违规,则此字段将为“container.googleapis.com”。另一方面,如果 Kubernetes Engine API 在 Compute Engine API (compute.googleapis.com) 中创建虚拟机时发生配额违规,则此字段将为“compute.googleapis.com”。 |
quotaMetric |
违规配额的指标。配额指标是用于衡量用量(例如 API 请求或 CPU)的命名计数器。当服务中发生某项活动(例如虚拟机分配)时,一个或多个配额指标可能会受到影响。 例如,“compute.googleapis.com/cpus_per_vm_family”“storage.googleapis.com/internet_egress_bandwidth”。 |
quotaId |
违规配额的 ID。也称为“限额名称”,是 API 服务上下文中配额的唯一标识符。 例如,“CPUS-PER-VM-FAMILY-per-project-region”。 |
quotaDimensions |
违反的配额的维度。所有非全局配额都会根据一组维度来强制执行。配额指标定义了要统计的内容,而维度则指定了应针对哪些方面增加计数器。 例如,“每个区域每个虚拟机系列的 CPU 数”配额会针对“区域”和“虚拟机系列”维度,对“compute.googleapis.com/cpus_per_vm_family”指标强制执行限制。如果违规行为发生在“us-central1”区域,并且针对的是“n1”虚拟机系列,则 quotaDimensions 将为: { "region": "us-central1", "vm_family": "n1", } 如果配额在全球范围内强制执行,quotaDimensions 将始终为空。 包含一系列 |
quotaValue |
例如,如果 |
futureQuotaValue |
违规时正在推出的新配额值。发布完成后,系统将强制执行此值,而不是 quotaValue。如果违规时没有正在进行的发布,则不会设置此字段。 例如,如果违规时正在进行一项发布,将 CPU 配额从 10 更改为 20,则此字段的值为 20。 |