Esta página foi traduzida pela API Cloud Translation.
Switch to English

Como usar métricas de cota

Esta página descreve como criar gráficos e políticas de alertas para monitorar a cota alocada pelo Google Cloud. O Google Cloud estabelece várias cotas que podem ser usadas para rastrear e limitar os recursos consumidos por um projeto ou uma organização. Para informações gerais sobre cotas, incluindo informações sobre cotas de alocação e de taxas, consulte Como trabalhar com cotas.

Antes de começar

Nesta página, presume-se familiaridade com os dados de série temporal e a respectiva manipulação. As páginas a seguir fornecem informações adicionais:

Como trabalhar com métricas de cota

O Cloud Monitoring gerencia a cota de duas maneiras:

  1. Cota do consumidor. Para esse tipo de cota, o recurso monitorado é consumer_quota. As métricas desse recurso são um subconjunto das métricas serviceruntime.

    A maioria dos exemplos desta página são exemplos de cotas do consumidor.

  2. Cotas específicas de recursos. Alguns serviços fornecem recursos monitorados que têm métricas específicas dos recursos para cotas. Esses tipos de métricas aparecem em grupos de três, seguindo este padrão:

    • service/quota/quota-type/exceeded
    • service/quota/quota-type/limit
    • service/quota/quota-type/usage

    Por exemplo, o Compute Engine tem o recurso compute.googleapis.com/VpcNetwork. As métricas relacionadas à cota associadas a esse recurso são o subconjunto compute.googleapis.com/quota das compute métricas. Há três tipos de métrica relacionados à cota "instâncias por rede VPC":

Como identificar métricas de cotas e nomes de limites

Os dados brutos sobre o consumo de cotas, principalmente para cotas do consumidor, podem incluir informações sobre muitas cotas diferentes. Para extrair informações sobre uma cota específica de um gráfico ou política de alertas, identifique esse subconjunto de dados de cota.

Dependendo da origem, os dados de cota podem incluir rótulos que podem ser usados para isolar as informações que você quer. Esses rótulos incluem o seguinte:

  • Métrica de cota: a métrica de cota é um identificador para um tipo de cota. Não é um dos tipos de métrica descritos na lista de métricas. Por exemplo, todos os dados de cota do consumidor são gravados como o tipo de métrica serviceruntime.googleapis.com, como quota/allocation/usage. Esse tipo de métrica tem um rótulo quota_metric que pode ser usado para filtrar uma cota específica, por exemplo, dados de uso de alocação.
  • Nome do limite: o nome do limite identifica um limite em um tipo específico de cota. Uma cota pode ter mais de um limite associado a ela. Por exemplo, uma cota para chamadas de leitura pode ter um limite por minuto de 100 e um limite por dia de 1.000, com dois nomes de limite, readsPerMinute e readsPerDay. Os tipos de métrica relacionados a cotas podem ter um campo limit_name para esse valor.

Todos os tipos de métrica serviceruntime.googleapis.com/quota fornecem o rótulo quota_metric, mas apenas alguns incluem o rótulo limit_name. Os tipos de métrica específicos do recurso para a cota incluem o rótulo limit_name.

Para identificar métricas de cota e nomes de limites específicos, use o seguinte procedimento:

  1. No Console do Google Cloud, acesse a página Cotas do administrador:

    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, os campos Métrica de cota e Nome do limite serão exibidos. Por exemplo, veja na captura de tela a seguir a cota de sub-redes da API Compute Engine mostra que a métrica é compute.googleapis.com/subnetworks e o nome do limite é SUBNETWORKS-per-project:

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

Se as informações detalhadas não listarem uma métrica de cota ou um nome de limite, o serviço não será compatível com métricas de cota.

Se as informações detalhadas não incluírem um recurso monitorado, esse recurso será consumer_quota. Caso contrário, essa cota mostrada na página de detalhes é uma cota específica de recursos para o recurso monitorado nomeado. A captura de tela anterior não lista explicitamente um recurso monitorado. Portanto, essa cota usa o recurso monitorado consumer_quota.

Exemplo: como visualizar o uso de uma métrica específica de cota do consumidor

A meta é criar um gráfico que exiba, por região, a cota total de armazenamento em disco do Compute Engine. Este exemplo de cota do consumidor recupera dados de quota/allocation/usage e filtra os dados para que o uso de alocação para uma métrica de cota específica seja exibido:

  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 o 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 o gráfico ao serviço do Compute Engine, adicione o filtro service = "compute.googleapis.com":

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

    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"
    

    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 a série temporal da cota total de armazenamento em disco do Compute Engine.

    O gráfico exibe o uso de cota apenas para as cotas que têm uso registrado. Por exemplo, se o projeto não tiver recursos do Compute Engine, filtrar o serviço compute.googleapis.com resultará em um gráfico sem dados.

  4. Para criar um gráfico que exiba o uso total da cota de armazenamento em disco do Compute Engine, use 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 refinar o gráfico para que ele exiba dados apenas das regiões, sem as zonas, adicione um filtro com base no rótulo location. Neste exemplo, onde as duas regiões são prefixadas por us- e terminam com 1, um filtro que usa a expressão regular location =~"^us.*1$" funciona bem:

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

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

Políticas de alertas no Cloud Monitoring

As políticas de alertas são uma maneira de configurar o Cloud Monitoring para notificar você quando algo acontecer, como atingir 85% do seu limite em uma cota.

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 e-mails a uma pessoa específica ou a um grupo de pessoas.

É possível usar duas técnicas para criar condições de política de alertas:

  • Como usar filtros do Monitoring para selecionar e manipular dados. Por exemplo, quando você usa a interface gráfica para criar condições de política de alertas, está criando filtros. No exemplo mostrado em Como trabalhar com métricas de cota, use filtros para selecionar dados para um gráfico. Também é possível usar filtros em solicitações para a API Monitoring.

  • Como usar a linguagem de consulta do Monitoring (MQL, na sigla em inglês) para selecionar e manipular dados. MQL é uma linguagem de consulta baseada em texto. Com o Editor de consulta MQL, você pode criar consultas que não podem ser criadas com a técnica baseada em filtro. Recomendamos que você use MQL para criar políticas de alertas com base em proporção. Para mais informações, consulte exemplos de política de alertas MQL.

Esta página discute as duas técnicas. Também é possível criar gráficos usando qualquer técnica.

Filtrar exemplos de políticas de alertas

Nesta seção, cada subseção inclui uma representação JSON de uma política de alertas e um par de tabelas que descrevem como configurar a política no Console do Google Cloud:

  • 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.

Esses exemplos são para a abordagem baseada em filtro.

Nenhuma dessas políticas calcula as proporções. Para exemplos baseados em proporção, consulte exemplos de política de alertas MQL.

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

Adicione um filtro para que o gráfico exiba apenas os dados do serviço que você quer monitorar. Por exemplo, para monitorar o serviço de gerenciamento de identidade e acesso, adicione o filtro a seguir: service = iam.googleapis.com.

Quando o campo de filtro está vazio, todos os dados de métricas disponíveis são incluídos no gráfico.

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 são combinados na série temporal individual.

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.

Veja abaixo uma representação dessa política de alertas no formato JSON.


{
    "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 um filtro para que o gráfico exiba apenas os dados do serviço que você quer monitorar. Por exemplo, para monitorar o serviço de gerenciamento de identidade e acesso, adicione o filtro a seguir: service = iam.googleapis.com.

Quando o campo de filtro está vazio, todos os dados de métricas disponíveis são incluídos no gráfico.

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 são combinados na série temporal individual.

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.

Veja abaixo uma representação dessa política de alertas no formato JSON.


{
    "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 políticas de alertas MQL

MQL é uma linguagem de consulta baseada em texto que usa uma série de operações vinculadas por barras. O MQL permite criar consultas mais avançadas e flexíveis do que é possível criar com filtros do Monitoring. Recomendamos que você use MQL para configurar políticas de alertas com base em proporção. Por exemplo, com o MQL, é possível configurar uma proporção para o uso da cota de taxas, que exige o cálculo da proporção de uma métrica de medidor (o limite) e uma métrica delta (a taxa).

É possível criar políticas de alertas baseadas em MQL usando o Console do Cloud ou a API Monitoring:

Para informações específicas sobre MQL, consulte Como usar a linguagem de consulta do Monitoring. Para mais informações sobre políticas de alertas baseadas em MQL, consulte Políticas de alerta com MQL.

Alerta de proporção sobre o uso da cota de taxa para um limite

O padrão de consulta MQL a seguir descreve um alerta que monitora quando o uso de taxa por minuto de um serviço de recursos específico excede 80% de um limite específico:

fetch consumer_quota
| filter resource.service == 'sample.googleapis.com'
| { metric serviceruntime.googleapis.com/quota/rate/net_usage
    | align delta_gauge(1m)
    | group_by [resource.project_id, metric.quota_metric, resource.location],
        sum(value.net_usage)
  ; metric serviceruntime.googleapis.com/quota/limit
    | filter metric.limit_name == 'myApiLimitPerDay'
    | group_by [resource.project_id, metric.quota_metric, resource.location],
        sliding(1m), max(val()) }
| ratio
| every 1m
| condition gt(val(), 0.8 '1')

Para usar esse padrão de consulta, faça as seguintes alterações:

  • Substitua sample.googleapis.com pelo serviço que você quer monitorar.
  • Substitua myApiLimitPerDay pelo metric.limit_name pelo limite que você quer rastrear. Para informações sobre como encontrar nomes de limites, consulte Como identificar métricas de cotas e nomes de limites
  • Substitua 1m nas funções delta_gauge e sliding por uma janela apropriada para seu limite.

Não modifique a operação every 1m, que determina com que frequência a condição é verificada.

Não é possível criar esta consulta com filtros.

Alerta de proporção sobre o uso da cota de taxa com caracteres curinga

O MQL é compatível com filtragem com caracteres curinga, expressões regulares e lógica booleana. Por exemplo, você pode usar o MQL para criar um alerta que rastreie vários limites e avisa se houver algum limite.

O seguinte padrão de consulta de MQL descreve um alerta que monitora quando o uso de taxa por minuto ou por dia de quaisquer serviços de recursos excede 80%:

fetch consumer_quota
| filter resource.service =~ '.*'
| { { metric serviceruntime.googleapis.com/quota/rate/net_usage
      | align delta_gauge(1m)
      | group_by [resource.project_id, metric.quota_metric, resource.location],
          sum(value.net_usage)
    ; metric serviceruntime.googleapis.com/quota/limit
      | filter metric.limit_name =~ '.*PerMinute.*'
      | group_by [resource.project_id, metric.quota_metric, resource.location],
          sliding(1m), max(val()) }
    | ratio
  ; { metric serviceruntime.googleapis.com/quota/rate/net_usage
      | align delta_gauge(1d)
      | group_by [resource.project_id, metric.quota_metric, resource.location],
          sum(value.net_usage)
    ; metric serviceruntime.googleapis.com/quota/limit
      | filter metric.limit_name =~ '.*PerDay.*'
      | group_by [resource.project_id, metric.quota_metric, resource.location],
          sliding(1d), max(val()) }
    | ratio }
| union
| every 1m
| condition gt(val(), 0.8 '1')

Para usar esse padrão de consulta, faça as seguintes alterações:

  • Substitua a expressão regular de resource.service por uma expressão regular para os serviços que você quer acompanhar.
  • Na primeira proporção:
    • Substitua .*PerMinute.* pelo metric.limit_name por uma expressão regular para o primeiro grupo de limites que você quer acompanhar. Para informações sobre como encontrar nomes de limites, consulte Como identificar métricas de cotas e nomes de limites
    • Substitua 1m nas funções delta_gauge e sliding por uma janela apropriada para seus limites.
  • Na segunda proporção:
    • Substitua .*PerDay.* pelo metric.limit_name por uma expressão regular para o segundo grupo de limites que você quer acompanhar.
    • Substitua 1d nas funções delta_gauge e sliding por uma janela apropriada para seus limites.

Não modifique a operação every 1m, que determina com que frequência a condição é verificada.

Não é possível criar esta consulta com filtros.

Alerta de proporção sobre o uso da cota de alocação para um limite

O padrão de consulta MQL a seguir descreve um alerta que monitora quando o uso de alocação por dia de um serviço de recursos específico excede 80% de um limite específico:

fetch consumer_quota
| filter resource.service == 'sample.googleapis.com'
| { metric serviceruntime.googleapis.com/quota/allocation/usage
    | align next_older(1d)
    | group_by [resource.project_id, metric.quota_metric, resource.location],
        max(val())
  ; metric serviceruntime.googleapis.com/quota/limit
    | filter metric.limit_name == 'CPUs-per-project'
    | align next_older(1d)
    | group_by [resource.project_id, metric.quota_metric, resource.location],
        min(val())
  }
| ratio
| every 1m
| condition gt(val(), 0.8 '1')

Para usar esse padrão de consulta, faça as seguintes alterações:

  • Substitua sample.googleapis.com pelo serviço que você quer monitorar.
  • Substitua CPUs-per-project pelo metric.limit_name pelo limite que você quer rastrear. Para informações sobre como encontrar nomes de limites, consulte Como identificar métricas de cotas e nomes de limites

Não modifique a operação every 1m, que determina com que frequência a condição é verificada.

Exemplo: uso de CPU de 75% em qualquer região

A consulta a seguir cria uma política de alertas que é acionada quando o uso de CPU da instância de VM do Compute Engine ultrapassa 75% do limite em qualquer região:

fetch consumer_quota
| filter resource.service == 'compute.googleapis.com'
| { metric serviceruntime.googleapis.com/quota/allocation/usage
    | align next_older(1d)
    | group_by [resource.project_id, metric.quota_metric, resource.location],
        max(val())
  ; metric serviceruntime.googleapis.com/quota/limit
    | filter metric.limit_name == 'CPUS-per-project-region'
    | align next_older(1d)
    | group_by [resource.project_id, metric.quota_metric, resource.location],
        min(val())
  }
| ratio
| every 1m
| condition gt(val(), 0.75 '1')

Esta política de cota do consumidor usa o nome do limite CPUS-per-project-region na cota "CPUs" da API Compute Engine. Para informações sobre como encontrar nomes de limite, consulte Como identificar métricas de cotas e nomes de limites.

Alerta de proporção sobre o uso da cota de alocação para qualquer serviço

O MQL é compatível com a filtragem com caracteres curinga, expressões regulares e lógica booleana. Por exemplo, é possível usar o MQL para criar um alerta que rastreia vários limites ou serviços e avisa se houver algum limite.

A consulta MQL a seguir descreve um alerta que monitora quando o uso por alocação por dia de qualquer serviço de recursos excede 80% em qualquer limite de cota:

fetch consumer_quota
| filter resource.service =~ '.*'
| { metric serviceruntime.googleapis.com/quota/allocation/usage
    | align next_older(1d)
    | group_by [resource.project_id, metric.quota_metric, resource.location],
        max(val())
  ; metric serviceruntime.googleapis.com/quota/limit
    | align next_older(1d)
    | group_by [resource.project_id, metric.quota_metric, resource.location],
        min(val())
  }
| ratio
| every 1m
| condition gt(val(), 0.8 '1')

Você pode usar essa consulta como apresentada ou substituir a expressão regular para resource.service por uma expressão regular para os serviços que você quer acompanhar. Também é possível filtrar um serviço específico e usar caracteres curinga em um filtro de limite.

Não modifique a operação every 1m, que determina com que frequência a condição é verificada.

Exemplo: uso da CPU acima de 50% em zonas específicas

A consulta a seguir cria uma política de alertas que é acionada quando o uso de CPU das instâncias de VM do Compute Engine ultrapassa 50% do limite em qualquer uma das zonas us-central1. Nessa consulta, os dados do limit são filtrados por um nome de limite e pelo local do recurso:

fetch consumer_quota
| filter resource.service == 'compute.googleapis.com'
| { metric serviceruntime.googleapis.com/quota/allocation/usage
    | align next_older(1d)
    | group_by [resource.project_id, metric.quota_metric, resource.location],
        max(val())
  ; metric serviceruntime.googleapis.com/quota/limit
    | filter metric.limit_name == 'CPUS-per-project-zone' &&
             resource.location =~ 'us-central1-.*'
    | align next_older(1d)
    | group_by [resource.project_id, metric.quota_metric, resource.location],
        min(val())
  }
| ratio
| every 1m
| condition gt(val(), 0.50 '1')

Esta política de cota do consumidor usa o nome do limite CPUS-per-project-zone na cota "CPUs" da API Compute Engine. Para informações sobre como encontrar nomes de limite, consulte Como identificar métricas de cotas e nomes de limites.

Alerta de proporção usando a cota específica de recursos

É possível usar o MQL para configurar proporções para métricas relacionadas a cotas específicas de recursos. Nesse caso, você especifica um recurso monitorado específico do serviço e calcula uma proporção em um par de métricas relacionadas a cotas específicas do recurso.

O padrão de consulta a seguir descreve um alerta que monitora quando o uso de uma cota excede 80% do limite:

fetch sample.googleapis.com/SampleResource
| { metric sample.googleapis.com/quota/samplemetric/usage
    | align next_older(1d)
    | group_by [resource.label_1, ... , resource.label_n,
                metric.label_1, ... , metric.label_n],
        max(val())
  ; metric sample.googleapis.com/quota/samplemetric/limit
    | align next_older(1d)
    | group_by [resource.label_1, ... , resource.label_n,
                metric.label_1, ... , metric.label_n],
        min(val())
  }
| ratio
| every 1m
| condition gt(val(), 0.8 '1')

Para usar esse padrão de consulta, faça as seguintes alterações:

  • Substitua sample.googleapis.com pelo serviço que você quer monitorar.
  • Substitua sampleResource pelo recurso monitorado associado.
  • Substitua samplemetric pela string de um grupo de tipos de métricas.
  • Nas operações group_by, liste cada um dos rótulos de recurso e métrica.

Exemplo: uso de CPU de 75% em qualquer região

Por exemplo, a consulta MQL a seguir configura um alerta que monitora quando o uso da cota instances_per_vpc_network do Compute Engine excede 80% para qualquer ID de rede:

fetch compute.googleapis.com/VpcNetwork
| { metric compute.googleapis.com/quota/instances_per_vpc_network/usage
    | align next_older(1d)
    | group_by [resource.resource_container, metric.limit_name,
                resource.location, resource.network_id],
        max(val())
  ; metric compute.googleapis.com/quota/instances_per_vpc_network/limit
    | align next_older(1d)
    | group_by [resource.resource_container, metric.limit_name,
                resource.location, resource.network_id],
        min(val())
  }
| ratio
| every 1m
| condition gt(val(), 0.80 '1')

Nessa consulta, o tipo de recurso compute.googleapis.com/VpcNetwork é usado, não consumer_quota, e a proporção de duas métricas compute.googleapis.com/quota/instances_per_vpc_network, usage e limit. para começar.

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 para cota de consumidor e cota específica de recursos. 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 um filtro para que o gráfico exiba apenas os dados do serviço que você quer monitorar. Por exemplo, para monitorar o serviço de gerenciamento de identidade e acesso, adicione o filtro a seguir: service = iam.googleapis.com.

Quando o campo de filtro está vazio, todos os dados de métricas disponíveis são incluídos no gráfico.

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 são combinados na série temporal individual.

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 um filtro para que o gráfico exiba apenas os dados do serviço que você quer monitorar. Por exemplo, para monitorar o serviço de gerenciamento de identidade e acesso, adicione o filtro a seguir: service = iam.googleapis.com.

Quando o campo de filtro está vazio, todos os dados de métricas disponíveis são incluídos no gráfico.

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 são combinados na série temporal individual.

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 um filtro para que o gráfico exiba apenas os dados do serviço que você quer monitorar. Por exemplo, para monitorar o serviço de gerenciamento de identidade e acesso, adicione o filtro a seguir: service = iam.googleapis.com.

Quando o campo de filtro está vazio, todos os dados de métricas disponíveis são incluídos no gráfico.

Group By Deixe em branco.
Aggregator none
Período Selecione 1500 m
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.

Série temporal para quota/instances_per_vpc_network/limit

Para visualizar os dados da série temporal da métrica compute.googleapis.com quota/instances_per_vpc_network/limit, para todas as redes no seu projeto do Google Cloud, use as seguintes configurações:

Campo do painel
Valor desejado

Valor
Resource type Insira compute.googleapis.com/VpcNetwork
Metric Selecione compute.googleapis.com/quota/instances_per_vpc_network/limit
Filtrar Deixar em branco
Group By Deixar em branco
Aggregator Sair como none
Período Selecione 1 m

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

Advanced Aggregation Ignorar

Série temporal para quota/instances_per_vpc_network/usage

Para visualizar os dados da série temporal da métrica compute.googleapis.com quota/instances_per_vpc_network/usage, para uma das redes no seu projeto do Google Cloud, use as seguintes configurações:

Campo do painel
Valor desejado

Valor
Resource type Insira compute.googleapis.com/VpcNetwork
Metric Selecione compute.googleapis.com/quota/instances_per_vpc_network/usage
Filtrar

Adicione um filtro para que o gráfico exiba apenas um subconjunto de todos os dados. Por exemplo, para ver o uso de uma rede específica, adicione o seguinte filtro: network_id = identifier.

Quando o campo de filtro está vazio, todos os dados de métricas disponíveis são incluídos no gráfico.

Group By Deixar em branco
Aggregator Sair como none
Período Selecione 1 m
Advanced Aggregation Ignorar

Gráficos MQL

É possível usar consultas do MQL para criar gráficos usando o Editor de consulta MQL. Por exemplo, qualquer uma das consultas mostradas nos exemplos de políticas de alertas MQL pode ser inserida no Editor de consultas. É possível omitir a última operação, condition, em cada consulta. mas aplica-se ao criar uma condição para uma política de alertas. Em um gráfico, a operação condition não faz nada.

Para mais informações, consulte Como usar o Editor de consultas e Exemplos de MQL.