Como usar métricas de cota

Esta página descreve como criar gráficos e políticas de alertas para monitorar ou visualizar o uso da cota. Para informações gerais sobre cotas, incluindo informações sobre cotas de alocação e de taxas, consulte Como trabalhar com cotas.

Para todos os gráficos e políticas de alertas nesta página, o recurso monitorado é consumer_quota. As métricas desse recurso são um subconjunto das métricas serviceruntime.

  • Para definições dos termos medidor, delta e cumulativo, consulte Tipos de métricas.
  • Para detalhes sobre os campos usados para combinar séries temporais, consulte Aligner e Reducer.

Noções básicas sobre cotas do consumidor

Para visualizar o uso de uma cota específica, filtre as séries temporais por um valor específico do rótulo quota_metric. O exemplo desta seção ilustra como identificar o valor correto desse rótulo por meio da visualização de dados de série temporal. Para determinar o valor desse rótulo para uma cota de API específica, use o seguinte procedimento:

  1. No Console do Google Cloud, acesse a página Cotas do Gerenciamento de identidade e acesso:

    Acessar "Cotas"

  2. Localize a cota de interesse e clique em Todas as cotas.

  3. Se um serviço for compatível com métricas de cota, um campo Métrica será exibido, mostrando o valor do rótulo quota_metric para esta API. A captura de tela a seguir ilustra que o valor do rótulo quota_metric para a cota de sub-redes da API do Compute Engine é compute.googleapis.com/subnetworks:

    Exemplo de uma página de detalhes de métricas de cota.

    Se um serviço não for compatível com métricas de cota, um campo Metric Metric não será exibido.

Exemplo

O objetivo é criar um gráfico que exiba, por região, a cota total de armazenamento em disco do Compute Engine.

  1. No Console do Google Cloud, selecione Cloud Monitoring e clique em Metrics Explorer.

  2. Configure o Metrics Explorer para exibir o uso da cota de alocação definindo o tipo de recurso como Cota do consumidor e definindo o tipo de métrica como Uso da cota de alocação:

    Selecione a cota do consumidor.

    O gráfico exibe o uso da cota de alocação como um gráfico de barras para um período de seis semanas. Ao visualizar a legenda, é possível ver que o gráfico exibe o uso da cota para vários serviços.

    Se a API Cloud Monitoring estiver sendo utilizada, o valor de filtro equivalente será:

    metric.type="serviceruntime.googleapis.com/quota/allocation/usage" resource.type="consumer_quota"
    
  3. Para limitar a exibição ao serviço do Compute Engine, adicione o filtro service = "compute.googleapis.com":

    Filtra a cota do consumidor por serviço de computação.

    Agora, o gráfico exibe a série temporal para o uso da cota alocada para as cotas do Compute Engine. A legenda exibe o valor do rótulo quota_metric para cada série temporal exibida. Esse valor identifica a cota específica. Por exemplo, compute.googleapis.com/disks_total_storage identifica que a série temporal é para a cota total de armazenamento em disco do Compute Engine. O gráfico exibe apenas o uso de cota para as cotas que tiveram o uso registrado. Por exemplo, se um projeto não tiver recursos do Compute Engine, esse filtro resultará em um gráfico sem dados.

    Se a API Cloud Monitoring estiver sendo utilizada, o valor de filtro equivalente será:

    metric.type="serviceruntime.googleapis.com/quota/allocation/usage" resource.type="consumer_quota" resource.label.service="compute.googleapis.com"
    
  4. Para criar um gráfico que exiba o uso total da cota de armazenamento em disco do Compute Engine, adicione o filtro quota_metric = "compute.googleapis.com/disks_total_storage":

    Filtrar a cota do consumidor por métrica de cota.

    Se a API Cloud Monitoring estiver sendo utilizada, o valor de filtro equivalente será:

    metric.type="serviceruntime.googleapis.com/quota/allocation/usage" resource.type="consumer_quota" metric.label.quota_metric="compute.googleapis.com/disks_total_storage"
    
  5. O gráfico anterior exibe séries temporais para as regiões us-centra1 e us-east1 e para várias zonas, incluindo a zona us-central1-a. Para exibir somente o uso da cota por região, adicione um filtro com base no rótulo location. Neste exemplo, em que as duas regiões são prefixadas por us- e terminam com 1, um filtro que usa uma expressão regular, location =~"^us.*1$", funciona bem:

    Filtrar por métrica e região de cota.

Com cotas do consumidor, o valor do rótulo quota_metric identifica o serviço e o uso de cota específico que está sendo monitorado. Use essas informações para criar gráficos ou políticas de alertas que monitoram uma métrica de cota específica.

Exemplos de políticas de alertas

Uma política de alertas é um conjunto de condições e informações de notificação:

  • Uma condição descreve o que está sendo monitorado, como os dados de série temporal desse recurso precisam ser combinados e quando um alerta precisa ser gerado. As políticas de alertas precisam especificar pelo menos uma condição.
  • O canal de notificação especifica quem será notificado e o modo de recebimento da notificação quando ocorrer um alerta. Por exemplo, é possível configurar a política de alertas para enviar um e-mail a uma pessoa específica ou a um grupo de pessoas.

No restante desta seção, incluiremos em cada subseção uma representação JSON de uma política de alertas. Se a política puder ser criada com o uso do Console do Google Cloud, duas tabelas também serão incluídas:

  • Na primeira, descrevemos o que está sendo monitorado e como os dados precisam ser combinados.
  • Já na segunda, descrevemos quando um alerta precisa ser gerado.

Os valores nessas tabelas podem ser usados para configurar uma condição de política de alertas.

Alertas sobre a proporção entre o uso e o limite da cota

É possível criar uma política de alertas para notificar você se a proporção entre o uso e o limite da cota para qualquer serviço no seu projeto do Google Cloud ultrapassar 80%. Só é possível criar esse tipo de política usando a API Cloud Monitoring.

Como usar a API Cloud Monitoring

É possível criar essa política de alertas usando o método da API alertPolicies.create. É possível invocar a API Cloud Monitoring diretamente, usando a ferramenta de linha de comando gcloud ou usando bibliotecas de cliente. Para mais informações, consulte Como criar políticas.

Para informações sobre como representar políticas de alertas em JSON ou YAML, consulte Políticas de amostra.

Esta política de exemplo monitora a proporção do uso de cota da API Identity and Access Management para o limite de cota. Como a combinação de limites de cota pode ser insignificante, um local é especificado neste exemplo.

{
    "combiner": "OR",
    "conditions": [
      {
        "conditionThreshold": {
          "filter": "metric.type=\"serviceruntime.googleapis.com/quota/allocation/usage\" resource.type=\"consumer_quota\" resource.label.\"service\"=\"iam.googleapis.com\"",
          "aggregations": [
            {
              "alignmentPeriod": "86400s",
              "crossSeriesReducer": "REDUCE_SUM",
              "groupByFields": [
                "metric.label.quota_metric"
              ],
              "perSeriesAligner": "ALIGN_NEXT_OLDER"
            }
          ],
          "denominatorFilter": "metric.type=\"serviceruntime.googleapis.com/quota/limit\" resource.type=\"consumer_quota\" resource.label.\"service\"=\"iam.googleapis.com\"",
          "denominatorAggregations" : [
            {
              "alignmentPeriod": "86400s",
              "crossSeriesReducer": "REDUCE_SUM",
              "groupByFields": [
                "metric.label.quota_metric"
              ],
              "perSeriesAligner": "ALIGN_NEXT_OLDER"
            }
          ],
          "comparison": "COMPARISON_GT",
          "duration": "60s",
          "thresholdValue": 0.8,
          "trigger": {
            "count": 1
          }
        },
        "displayName": "Ratio quota usage for iam.googleapis.com by label.quota_metric [SUM]",
      }
    ],
    "displayName": "Ratio quota usage to limit",
    "enabled": true,
  }

Alerta sobre quota/exceeded erros

É possível criar uma política de alertas para notificar você se algum serviço no seu projeto do Google Cloud estiver relatando um erro de cota ultrapassada. É possível criar esse tipo de política usando o Console do Google Cloud ou a API Cloud Monitoring.

Como usar o Console do Google Cloud

O restante do conteúdo desta subseção é para a caixa de diálogo de condições de uma política de alertas.

Preencha a caixa de diálogo Destino usando as configurações da tabela a seguir. Elas especificam que você quer monitorar os dados da série temporal da métrica serviceruntime /quota/exceeded para todos os serviços em seu projeto do Google Cloud e agrupar os dados pelo limite de cota.

Campo do painel
Valor desejado

Valor
Resource type Insira consumer_quota
Metric Selecione serviceruntime.googleapis.com/quota/exceeded
Filter

Deixe em branco.

Se este campo ficar em branco, todos os dados de métricas disponíveis serão incluídos no gráfico. Para restringir os dados exibidos, adicione um filtro. Por exemplo, para restringir os dados ao serviço de geração de registros, adicione o filtro: service = logging.googleapis.com.

Group By

Selecione quota_metric.

Esta opção agrupa os dados pelo tipo de nome do quota_metric.

Aggregator

Selecione sum.

O campo de agregação é definido automaticamente como sum quando os dados são agrupados. Essa configuração define como os dados na série temporal individual são combinados.

Período Selecione 1 m
Advanced Aggregation Alinhador: count true

Esta métrica é do tipo GAUGE, ou seja, cada ponto de dados na série temporal é uma medição instantânea. O tipo de valor é BOOL. Um valor de true indica que a cota foi ultrapassada.

Para essa métrica, as configurações do alinhador de count true e count são equivalentes.

Preencha a caixa de diálogo Configuração usando as configurações a seguir. Essas configurações fazem com que a política de alertas crie um alerta se o número de erros de cota excedida ultrapassar o valor de 0 para 1 m. Um valor de zero é selecionado aqui porque erros de cota excedida são inesperados e são uma indicação de que uma cota precisa ser aumentada ou que um serviço precisa ser modificado para reduzir as solicitações da API. Convém usar um limite mais alto.

Campo do painel
Configuração

Valor
Condition triggers if Any time series violates
Condition is above
Threshold 0
For 1 m

Como usar a API Cloud Monitoring

É possível criar essa política de alertas usando o método da API alertPolicies.create. É possível invocar a API Cloud Monitoring diretamente, usando a ferramenta de linha de comando gcloud ou usando bibliotecas de cliente. Para mais informações, consulte Como criar políticas.

Para informações sobre como representar políticas de alertas em JSON ou YAML, consulte Políticas de amostra.

Esta política de exemplo monitora a proporção do uso de cota da API Identity and Access Management para o limite de cota. Como a combinação de limites de cota pode ser insignificante, um local é especificado neste exemplo.

{
    "combiner": "OR",
    "conditions": [
      {
        "conditionThreshold": {
          "aggregations": [
            {
              "alignmentPeriod": "60s",
              "crossSeriesReducer": "REDUCE_SUM",
              "groupByFields": [
                "metric.label.quota_metric"
              ],
              "perSeriesAligner": "ALIGN_COUNT_TRUE"
            }
          ],
          "comparison": "COMPARISON_GT",
          "duration": "60s",
          "filter": "metric.type=\"serviceruntime.googleapis.com/quota/exceeded\" resource.type=\"consumer_quota\"",
          "trigger": {
            "count": 1
          }
        },
        "displayName": "Quota exceeded error by label.quota_metric SUM",
      }
    ],
    "displayName": "Quota exceeded policy",
  }

Alerta sobre o quota/allocation/usage absoluto

É possível criar uma política de alertas para notificar você se o uso da cota de alocação para um serviço específico em seu projeto do Google Cloud estiver excedendo um limite especificado pelo usuário. É possível criar esse tipo de política usando o Console do Google Cloud ou a API Cloud Monitoring.

Como usar o Console do Google Cloud

O restante do conteúdo desta subseção é para a caixa de diálogo de condições de uma política de alertas.

Preencha a caixa de diálogo Destino usando as configurações da tabela a seguir. Elas especificam que você quer monitorar os dados da série temporal da métrica serviceruntime /quota/allocation/usage para um serviço em seu projeto do Google Cloud, e que você quer agrupar os dados pelo limite de cota.

Campo do painel
Valor desejado

Valor
Resource type Insira consumer_quota
Metric Selecione serviceruntime.googleapis.com/quota/allocation/usage
Filter Adicione o filtro service = iam.googleapis.com.

Substitua iam.googleapis.com pelo nome do serviço que você quer monitorar. Neste exemplo, esse serviço comum foi selecionado.

Group By

Selecione quota_metric.

Esta opção agrupa os dados pelo tipo de nome do quota_metric.

Aggregator

Selecione sum.

O campo de agregação é definido automaticamente como sum quando os dados são agrupados. Essa configuração define como os dados na série temporal individual são combinados.

Período Selecione 1440 m

As correspondências de período são o intervalo de amostragem dessa métrica.

Advanced Aggregation Alinhador: next older

O alinhador está definido como next older para incluir o valor medido desta métrica GAUGE.

Preencha a caixa de diálogo Configuração usando as configurações a seguir. Essas configurações fazem com que a política de alertas crie um alerta se o valor da série temporal exceder 2,5 para 1440 m. O valor de 1.440 m corresponde ao período de alinhamento. O valor de 2,5 foi selecionado para este exemplo porque é um pouco maior do que o valor normal para o sistema de teste. Selecione o limite com base no serviço que você está monitorando em combinação com uma compreensão do intervalo esperado de valores para a métrica.

Campo do painel
Configuração

Valor
Condition triggers if Any time series violates
Condition is above
Threshold 2.5
For 1440 m

Como usar a API Cloud Monitoring

É possível criar essa política de alertas usando o método da API alertPolicies.create. É possível invocar a API Cloud Monitoring diretamente, usando a ferramenta de linha de comando gcloud ou usando bibliotecas de cliente. Para mais informações, consulte Como criar políticas.

Para informações sobre como representar políticas de alertas em JSON ou YAML, consulte Políticas de amostra.

Esta política de exemplo monitora a proporção do uso de cota da API Identity and Access Management para o limite de cota. Como a combinação de limites de cota pode ser insignificante, um local é especificado neste exemplo.

{
    "combiner": "OR",
    "conditions": [
      {
        "conditionThreshold": {
          "aggregations": [
            {
              "alignmentPeriod": "86400s",
              "crossSeriesReducer": "REDUCE_SUM",
              "groupByFields": [
                "metric.label.quota_metric"
              ],
              "perSeriesAligner": "ALIGN_NEXT_OLDER"
            }
          ],
          "comparison": "COMPARISON_GT",
          "duration": "84600s",
          "filter": "metric.type=\"serviceruntime.googleapis.com/quota/allocation/usage\" resource.type=\"consumer_quota\" resource.label.\"service\"=\"iam.googleapis.com\"",
          "thresholdValue": 2.5,
          "trigger": {
            "count": 1
          }
        },
        "displayName": "Allocation quota usage for iam.googleapis.com by label.quota_metric SUM",
      }
    ],
    "displayName": "Absolute quota usage policy",
  }

Exemplos de gráficos

Os gráficos exibem dados de série temporal. É possível usar o Metrics Explorer para criar um gráfico. Com o Metrics Explorer, é possível descartar o gráfico quando não precisar mais dele ou salvá-lo em um painel. Na visualização do painel, é possível adicionar um gráfico ao painel.

Para criar um gráfico, especifique o que você quer visualizar e como quer visualizar os dados. O restante desta seção contém configurações que podem ser usadas para criar gráficos. Também é possível usar as configurações da caixa de diálogo Destino de uma política de alertas para criar um gráfico.

Uso máximo no intervalo para quota/allocation/usage

Para visualizar os dados da série temporal da métrica serviceruntime quota/allocation/usage, para todos os serviços em seu projeto do Google Cloud, quando os dados forem agrupados pelo nome da métrica de cota e o valor máximo da métrica em um intervalo de 25 horas for exibido, use as seguintes configurações:

Campo do painel
Valor desejado

Valor
Resource type Insira consumer_quota
Metric Selecione serviceruntime.googleapis.com/quota/allocation/usage
Filter Adicione o filtro service = iam.googleapis.com.

Substitua iam.googleapis.com pelo nome do serviço que você quer monitorar. Neste exemplo, esse serviço comum foi selecionado.

Group By

Selecione quota_metric.

Esta opção agrupa os dados pelo tipo de nome do quota_metric.

Aggregator

Selecione sum.

O campo de agregação é definido automaticamente como sum quando os dados são agrupados. Essa configuração define como os dados na série temporal individual são combinados.

Período Selecione 1500 m

O período, 25 horas, é um pouco mais longo do que o intervalo de amostragem dessa métrica.

Advanced Aggregation Alinhador: max
Agregador secundário:sum

O alinhador é definido para exibir o valor máximo da métrica medida no período de alinhamento. O agregador secundário combina a série temporal para os diferentes serviços em uma única série temporal.

Série temporal para quota/rate/net_usage

Para visualizar os dados da série temporal da métrica serviceruntime quota/rate/net_usage, para todos os serviços do projeto do Google Cloud, quando os dados forem agrupados pelo nome da métrica de cota e a taxa de uso for exibida, use as seguintes configurações:

Campo do painel
Valor desejado

Valor
Resource type Insira consumer_quota
Metric Selecione serviceruntime.googleapis.com/quota/rate/net_usage
Filter Adicione o filtro service = iam.googleapis.com.

Substitua iam.googleapis.com pelo nome do serviço que você quer monitorar. Neste exemplo, esse serviço comum foi selecionado.

Group By

Selecione quota_metric.

Esta opção agrupa os dados pelo tipo de nome do quota_metric.

Aggregator

Selecione sum.

O campo de agregação é definido automaticamente como sum quando os dados são agrupados. Essa configuração define como os dados na série temporal individual são combinados.

Período Selecione 1 m

O período de 1 minuto corresponde ao intervalo de amostragem dessa métrica.

Advanced Aggregation Alinhador: rate

Definindo o alinhador com o valor de rate, os valores armazenados na série temporal para essa métrica DELTA são convertidos em uma nova série temporal que armazena dados de taxa. O eixo y do gráfico tem as unidades de cota por segundo.

Série temporal para quota/limit

Para visualizar os dados da série temporal da métrica serviceruntime quota/limit, para todos os serviços em seu projeto do Google Cloud, em que os dados são agregados em 25 horas, use as seguintes configurações:

Campo do painel
Valor desejado

Valor
Resource type Insira consumer_quota
Metric Selecione serviceruntime.googleapis.com/quota/limit
Filter Adicione o filtro service = iam.googleapis.com.

Substitua iam.googleapis.com pelo nome do serviço que você quer monitorar. Neste exemplo, esse serviço comum foi selecionado.

Group By Deixe em branco.
Aggregator none
Período Selecione 1500 m

As correspondências de período são o intervalo de amostragem dessa métrica.

Advanced Aggregation Alinhador: next older

O alinhador está definido como next older para exibir o valor medido desta métrica GAUGE. O período de alinhamento, de 25 horas, é ligeiramente maior do que o intervalo de amostragem dessa métrica.