QuotaFailure

Descreve como uma verificação de cota falhou.

Por exemplo, se um limite diário for excedido para o projeto de chamada, um serviço poderá responder com um detalhe QuotaFailure que contém o ID do projeto e a descrição do limite de cota excedido. Se o projeto de chamada não tiver ativado o serviço no console do desenvolvedor, um serviço poderá responder com o ID do projeto e definir service_disabled como "true".

Consulte também os tipos RetryInfo e Help para outros detalhes sobre como lidar com uma falha de cota.

Representação JSON
{
  "violations": [
    {
      object (Violation)
    }
  ]
}
Campos
violations[]

object (Violation)

Descreve todas as violações de cota.

Violação

Um tipo de mensagem usado para descrever uma única violação de cota. Por exemplo, uma cota diária ou personalizada que foi excedida.

Representação JSON
{
  "subject": string,
  "description": string,
  "apiService": string,
  "quotaMetric": string,
  "quotaId": string,
  "quotaDimensions": {
    string: string,
    ...
  },
  "quotaValue": string,
  "futureQuotaValue": string
}
Campos
subject

string

O assunto em que a verificação de cota falhou. Por exemplo, "clientip:" ou "project:".

description

string

Uma descrição de como a verificação de cota falhou. Os clientes podem usar essa descrição para saber mais sobre a configuração de cota na documentação pública do serviço ou encontrar o limite de cota relevante para ajustar no console do desenvolvedor.

Por exemplo: "Serviço desativado" ou "Limite diário de operações de leitura excedido".

apiService

string

O serviço de API de que o QuotaFailure.Violation se origina. Em alguns casos, os problemas de cota têm origem em um serviço de API diferente daquele que foi chamado. Em outras palavras, uma dependência do serviço de API chamado pode ser a causa do QuotaFailure, e esse campo teria o nome do serviço de API de dependência.

Por exemplo, se a API chamada for a API Kubernetes Engine (container.googleapis.com) e ocorrer uma violação de cota na própria API Kubernetes Engine, esse campo será "container.googleapis.com". Por outro lado, se a violação de cota ocorrer quando a API Kubernetes Engine criar VMs na API Compute Engine (compute.googleapis.com), esse campo será "compute.googleapis.com".

quotaMetric

string

A métrica da cota violada. Uma métrica de cota é um contador nomeado para medir o uso, como solicitações de API ou CPUs. Quando uma atividade ocorre em um serviço, como a alocação de máquinas virtuais, uma ou mais métricas de cota podem ser afetadas.

Por exemplo, "compute.googleapis.com/cpus_per_vm_family", "storage.googleapis.com/internet_egress_bandwidth".

quotaId

string

O ID da cota violada. Também conhecido como "nome do limite", é o identificador exclusivo de uma cota no contexto de um serviço de API.

Por exemplo, "CPUS-PER-VM-FAMILY-per-project-region".

quotaDimensions

map (key: string, value: string)

As dimensões da cota violada. Todas as cotas não globais são aplicadas a um conjunto de dimensões. Enquanto a métrica de cota define o que contar, as dimensões especificam para quais aspectos o contador deve ser incrementado.

Por exemplo, a cota "CPUs por região por família de VMs" impõe um limite à métrica "compute.googleapis.com/cpus_per_vm_family" nas dimensões "region" e "vm_family". Se a violação ocorreu na região "us-central1" e para a família de VMs "n1", o quotaDimensions seria:

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

Quando uma cota é aplicada globalmente, o quotaDimensions sempre fica vazio.

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

quotaValue

string (int64 format)

O valor da cota aplicada no momento do QuotaFailure.

Por exemplo, se o valor da cota aplicada no momento do QuotaFailure no número de CPUs for "10", o valor desse campo vai refletir essa quantidade.

futureQuotaValue

string (int64 format)

O novo valor de cota sendo lançado no momento da violação. Quando o lançamento for concluído, esse valor será aplicado no lugar de "quotaValue". Se não houver um lançamento em andamento no momento da violação, esse campo não será definido.

Por exemplo, se no momento da violação uma implantação estiver em andamento, mudando a cota de CPUs de 10 para 20, 20 será o valor desse campo.