QuotaFailure

描述配额检查失败的方式。

例如,如果调用项目的每日限额被超出,服务可能会返回一个 QuotaFailure 详情,其中包含项目 ID 和超出限额的说明。如果调用项目尚未在开发者控制台中启用该服务,则服务可能会以项目 ID 进行响应,并将 service_disabled 设置为 true。

另请参阅 RetryInfo 和 Help 类型,了解有关处理配额失败的其他详细信息。

JSON 表示法
{
  "violations": [
    {
      object (Violation)
    }
  ]
}
字段
violations[]

object (Violation)

描述所有配额违规情况。

违规

用于描述单个配额违规情况的消息类型。例如,超出每日配额或自定义配额。

JSON 表示法
{
  "subject": string,
  "description": string,
  "apiService": string,
  "quotaMetric": string,
  "quotaId": string,
  "quotaDimensions": {
    string: string,
    ...
  },
  "quotaValue": string,
  "futureQuotaValue": string
}
字段
subject

string

配额检查失败的主题。例如,“clientip:”或“project:”。

description

string

配额检查失败方式的说明。客户端可以使用此说明在服务的公开文档中详细了解配额配置,或通过开发者控制台找到相关配额限制进行调整。

例如:“服务已停用”或“超出读取操作的每日限额”。

apiService

string

QuotaFailure.Violation 的来源 API 服务。在某些情况下,配额问题源于被调用的 API 服务以外的其他 API 服务。换句话说,被调用的 API 服务的依赖项可能是 QuotaFailure 的原因,而此字段将包含依赖项 API 服务名称。

例如,如果调用的 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

string

违规配额的指标。配额指标是用于衡量用量(例如 API 请求或 CPU)的命名计数器。当服务中发生某项活动(例如虚拟机分配)时,一个或多个配额指标可能会受到影响。

例如,“compute.googleapis.com/cpus_per_vm_family”“storage.googleapis.com/internet_egress_bandwidth”。

quotaId

string

违规配额的 ID。也称为“限额名称”,是 API 服务上下文中配额的唯一标识符。

例如,“CPUS-PER-VM-FAMILY-per-project-region”。

quotaDimensions

map (key: string, value: string)

违反的配额的维度。所有非全局配额都会根据一组维度来强制执行。配额指标定义了要统计的内容,而维度则指定了应针对哪些方面增加计数器。

例如,“每个区域每个虚拟机系列的 CPU 数”配额会针对“区域”和“虚拟机系列”维度,对“compute.googleapis.com/cpus_per_vm_family”指标强制执行限制。如果违规行为发生在“us-central1”区域,并且针对的是“n1”虚拟机系列,则 quotaDimensions 将为:

{ "region": "us-central1", "vm_family": "n1", }

如果配额在全球范围内强制执行,quotaDimensions 将始终为空。

包含一系列 "key": value 对的对象。示例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

quotaValue

string (int64 format)

QuotaFailure 时强制执行的配额值。

例如,如果 QuotaFailure 时强制执行的 CPU 数量配额值为“10”,则此字段的值将反映此数量。

futureQuotaValue

string (int64 format)

违规时正在推出的新配额值。发布完成后,系统将强制执行此值,而不是 quotaValue。如果违规时没有正在进行的发布,则不会设置此字段。

例如,如果违规时正在进行一项发布,将 CPU 配额从 10 更改为 20,则此字段的值为 20。