Grafico e monitoraggio delle metriche delle quote

Le policy di avviso e i grafici in Cloud Monitoring ti consentono di monitorare le quote che Google Cloud alloca al tuo progetto. Il monitoraggio di queste quote ti aiuta a monitorare e limitare le risorse consumate dai tuoi workload.

Per creare una criterio di avviso in più progetti Google Cloud , ti consigliamo di utilizzare l'API Monitoring. Per creare un grafico o monitorare un rapporto di metriche, ti consigliamo di utilizzare Prometheus Query Language (PromQL). Per informazioni generali sulle quote di allocazione e sulle quote di frequenza, consulta la panoramica delle quote di Cloud.

Prima di iniziare

Questo documento presuppone che tu abbia familiarità con i dati delle serie temporali e la loro manipolazione. Le seguenti risorse forniscono ulteriori informazioni:

  • Per informazioni sull'utilizzo dei dati delle serie temporali, consulta Filtro e aggregazione.
  • Per le definizioni dei termini gauge, delta e cumulative, consulta Tipi di metriche.
  • Per informazioni dettagliate sulle funzioni utilizzate per combinare le serie temporali, consulta Aligner e Reducer.

Gestione delle quote

Google Cloud fornisce due meccanismi per consentire ai servizi di definire e gestire le quote:

  • Quota consumer: quando i servizi implementano una quota consumer, scrivono una metrica serviceruntime per la risorsa monitorata consumer_quota. Il servizio aggiunge anche un'etichetta quota_metric ai dati che scrive. Il valore dell'etichetta identifica il servizio e la quota specifica misurata dalla serie temporale.

    Per visualizzare l'utilizzo di una quota di servizio specifica, filtra le serie temporali serviceruntime in base a un'etichetta quota_metric specifica.

    La maggior parte degli esempi in questa pagina riguarda le quote consumer.

  • Quote specifiche per le risorse: alcuni servizi forniscono risorse monitorate che hanno metriche specifiche per le risorse per le quote. Questi tipi di metriche vengono visualizzati in gruppi di tre e seguono un formato di denominazione:

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

    Ad esempio, Compute Engine ha la risorsa compute.googleapis.com/VpcNetwork. Le metriche relative alle quote associate a questa risorsa sono il sottoinsieme compute.googleapis.com/quota delle metriche compute. Esistono tre tipi di metriche relative alla quota "Istanze per rete VPC":

Identifica le metriche di quota e i nomi dei limiti

I dati non elaborati sul consumo della quota, in particolare per la quota consumer, possono includere informazioni su molte quote diverse. Per estrarre informazioni su una quota specifica per un grafico o una criterio di avviso, devi identificare il sottoinsieme di dati della quota.

A seconda dell'origine, i dati sulla quota potrebbero includere etichette che puoi utilizzare per isolare le informazioni che ti interessano. Queste etichette includono:

  • Metrica di quota: la metrica di quota è un identificatore di un tipo di quota; non è uno dei tipi di metriche descritti in Elenco delle metriche. Ad esempio, tutti i dati relativi alla quota consumer vengono scritti come tipo di metrica serviceruntime.googleapis.com, ad esempio quota/allocation/usage. Questo tipo di metrica ha un'etichetta quota_metric che può essere utilizzata per filtrare in base a una quota specifica, ad esempio i dati sull'utilizzo dell'allocazione.
  • Nome limite: il nome limite identifica un limite per un tipo specifico di quota. A una quota possono essere associati più limiti. Ad esempio, una quota per le chiamate di lettura potrebbe avere un limite al minuto di 100 e un limite al giorno di 1000, con due nomi di limite, readsPerMinute e readsPerDay. I tipi di metriche relative alle quote potrebbero avere un campo limit_name per questo valore.

Tutti i tipi di metriche serviceruntime.googleapis.com/quota forniscono l'etichetta quota_metric, ma solo alcuni includono l'etichetta limit_name. I tipi di metriche per la quota specifiche per le risorse includono l'etichetta limit_name.

Non tutti i servizi Google Cloud supportano le metriche relative alle quote. Per determinare se un servizio supporta le metriche di quota e per identificare i valori delle etichette specifiche per la quota, puoi utilizzare la seguente procedura:

  1. Nella console Google Cloud , vai alla pagina Quote e limiti di sistema:

    Vai a Quote e limiti di sistema

    Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo IAM e amministrazione.

  2. Fai clic su Visualizza colonna e aggiungi le seguenti colonne alla visualizzazione della quota:

    • Metrica: questa colonna mostra il valore dell'etichetta quota_metric.
    • Nome limite: questa colonna mostra il valore dell'etichetta limit_name.
    • Risorsa monitorata: se compilata, la quota utilizza la risorsa monitorata elencata. Se vuota, la risorsa monitorata per la quota è consumer_quota.
  3. Individua la quota di interesse.

    Quando un servizio fornisce una quota consumer, la voce nella tabella non elenca una risorsa monitorata. Ad esempio, la quota delle subnet dell'API Compute Engine elenca la Metrica come compute.googleapis.com/subnetworks e il Nome limite come SUBNETWORKS-per-project. La colonna Risorsa monitorata è vuota.

    Quando un servizio ha una quota o un limite specifico per una risorsa, viene specificato il tipo di risorsa monitorata. Ad esempio, per l'API AlloyDB, la pagina delle quote contiene una voce intitolata "Spazio di archiviazione utilizzato per cluster (byte)". Il tipo di risorsa monitorata è alloydb.googleapis.com/Location e la metrica è alloydb.googleapis.com/storage_usage_per_cluster.

Esempio: visualizza l'utilizzo per una metrica di quota consumer specifica

L'obiettivo è creare un grafico che mostri, per regione, la quota totale di spazio di archiviazione su disco di Compute Engine. Questo esempio di quota consumer recupera i dati quota/allocation/usage e poi li filtra in modo da visualizzare l'utilizzo dell'allocazione per una metrica di quota specifica:

  1. Nella console Google Cloud , seleziona Cloud Monitoring, quindi seleziona Metrics Explorer.

  2. Nella barra degli strumenti, espandi il menu del periodo di tempo e seleziona Ultimi 14 giorni.

  3. Espandi il menu Tipo di widget e seleziona Grafico a barre in pila.

  4. Configura Esplora metriche per visualizzare l'utilizzo della quota di allocazione:

    1. Fai clic su Seleziona una metrica e inserisci allocation nella barra dei filtri.
    2. Seleziona Quota consumer per la risorsa.
    3. Seleziona Quota per la categoria di metrica.
    4. Seleziona Utilizzo della quota di allocazione per la metrica e fai clic su Applica.
    5. Espandi il menu Aggregazione e seleziona Nessuna aggregazione.

    Seleziona la quota consumer.

    Il grafico mostra l'utilizzo della quota di allocazione sotto forma di grafico a barre per un periodo di sei settimane. Visualizzando la legenda, puoi vedere che il grafico mostra l'utilizzo della quota per più servizi.

    Se utilizzi l'API Cloud Monitoring, il valore del filtro equivalente è:

    metric.type="serviceruntime.googleapis.com/quota/allocation/usage" resource.type="consumer_quota"
    

    Puoi visualizzare questo valore di filtro espandendo il menu Tipo di risorsa e poi selezionando Modalità filtro diretto.

  5. Per limitare il grafico al servizio Compute Engine, aggiungi il filtro service = compute.googleapis.com:

    Filtra la quota consumer per servizio di computing.

    Se utilizzi l'API Cloud Monitoring, il valore del filtro equivalente è:

    metric.type="serviceruntime.googleapis.com/quota/allocation/usage" resource.type="consumer_quota" resource.label.service="compute.googleapis.com"
    

    Il grafico ora mostra la serie temporale per l'utilizzo della quota di allocazione per le quote di Compute Engine. La legenda mostra il valore dell'etichetta quota_metric per ogni serie temporale visualizzata. Questo valore identifica la quota specifica. Ad esempio, compute.googleapis.com/disks_total_storage identifica la serie temporale per la quota totale di spazio di archiviazione su disco di Compute Engine.

    Il grafico mostra l'utilizzo delle quote solo per quelle che hanno registrato un utilizzo. Ad esempio, se il progetto non ha risorse Compute Engine, il filtro per il servizio compute.googleapis.com genera un grafico senza dati.

  6. Per creare un grafico che mostri l'utilizzo totale della quota di spazio di archiviazione su disco di Compute Engine, utilizza il filtro quota_metric = compute.googleapis.com/disks_total_storage:

    Filtra la quota consumer per metrica della quota.

    Se utilizzi l'API Cloud Monitoring, il valore del filtro equivalente è:

    metric.type="serviceruntime.googleapis.com/quota/allocation/usage" resource.type="consumer_quota" metric.label.quota_metric="compute.googleapis.com/disks_total_storage"
    
  7. Il grafico precedente mostra le serie temporali per le regioni us-central1 e us-east1 e per più zone, inclusa la zona us-central1-a.

    Per perfezionare il grafico in modo che mostri i dati solo per le regioni, senza le zone, aggiungi un filtro basato sull'etichetta location. In questo esempio, in cui entrambe le regioni hanno il prefisso us- e terminano con 1, un filtro che utilizza l'espressione regolare location =~ ^us.*1$ funziona bene:

    Filtra per metrica di quota e regione.

Per la quota consumer, il valore dell'etichetta quota_metric identifica sia il servizio sia l'utilizzo specifico della quota monitorata. Queste informazioni vengono utilizzate quando crei grafici o policy di avviso che monitorano una metrica di quota specifica.

Policy di avviso in Cloud Monitoring

Le policy di avviso sono un modo per configurare Monitoring in modo che ti invii una notifica quando si verifica un evento, ad esempio quando raggiungi l'85% del limite di una quota.

Una criterio di avviso è una raccolta di condizioni e informazioni di notifica:

  • Una condizione descrive cosa viene monitorato, come devono essere combinati i dati delle serie temporali per la risorsa e quando viene generato un avviso. Una criterio di avviso deve specificare almeno una condizione.
  • Il canale di notifica specifica chi deve essere informato e come deve essere informato quando si verifica un avviso. Ad esempio, puoi configurare la criterio di avviso in modo che invii un'email a una persona specifica o a un gruppo di persone.

Esistono due tecniche che puoi utilizzare per creare condizioni per le policy di avviso:

  • Utilizzo dei filtri di Monitoring per selezionare e manipolare i dati. Ad esempio, quando utilizzi l'interfaccia grafica per creare condizioni per le policy di avviso, stai creando filtri. L'esempio mostrato in Utilizzo delle metriche di quota utilizza i filtri per selezionare i dati per un grafico. Puoi anche utilizzare i filtri nelle richieste all'API Monitoring.

  • Utilizzo di PromQL per selezionare e manipolare i dati. PromQL è un linguaggio di query basato su testo. Con l'editor di codice PromQL, puoi creare query che non puoi creare con la tecnica basata sui filtri. Ti consigliamo di utilizzare PromQL per creare policy di avviso basate su rapporti. Per saperne di più, consulta Esempi di policy di avviso PromQL.

Questa pagina illustra entrambe le tecniche. Puoi anche creare grafici utilizzando entrambe le tecniche.

Esempi di filtri per le policy di avviso

In questa sezione, ogni sottosezione include una rappresentazione JSON di una criterio di avviso, insieme a una coppia di tabelle che descrivono come configurare la policy nella console Google Cloud :

  • La prima tabella descrive cosa viene monitorato e come devono essere combinati i dati.
  • La seconda tabella descrive quando deve essere generato un avviso.

Questi esempi si riferiscono all'approccio basato sui filtri.

Nessuna di queste policy calcola i rapporti. Per esempi basati su rapporti, consulta Esempi di policy di avviso PromQL.

Avvisi sugli errori di quota/exceeded

Puoi creare una criterio di avviso per ricevere una notifica se un servizio nel tuo progettoGoogle Cloud segnala un errore di superamento della quota. Puoi creare questo tipo di policy utilizzando la console Google Cloud o l'API Cloud Monitoring.

Utilizzo della console Google Cloud

Il resto dei contenuti di questa sottosezione riguarda la finestra di dialogo delle condizioni di una criterio di avviso.

Completa la finestra di dialogo Nuova condizione utilizzando le impostazioni nella tabella seguente. Queste impostazioni specificano che vuoi monitorare i dati delle serie temporali per la metrica serviceruntime /quota/exceeded per tutti i servizi nel tuo progetto Google Cloud e che vuoi raggruppare i dati in base al limite di quota.

Finestra di dialogo Nuova condizione
Campo

Valore
Risorsa e metrica Nel menu Risorse, seleziona Quota consumer.
Nel menu Categorie di metriche, seleziona Quota.
Nel menu Metriche, seleziona Errore di superamento quota.

(metric.type è serviceruntime.googleapis.com/quota/exceeded,
e resource.type è consumer_quota).
Filtro

Aggiungi un filtro in modo che il grafico mostri solo i dati relativi al servizio che vuoi monitorare. Ad esempio, per monitorare il servizio Identity and Access Management, aggiungi il seguente filtro: service = iam.googleapis.com.

Quando il campo del filtro è vuoto, nel grafico vengono inclusi tutti i dati delle metriche disponibili.

Finestra temporale continua Seleziona 1 m
Funzione finestra temporale continua Seleziona count true

Questa metrica è di tipo GAUGE, il che significa che ogni punto dati della serie temporale è una misurazione istantanea. Il tipo di valore è BOOL. Un valore di true indica che la quota è stata superata.

Per questa metrica, le funzioni finestra mobile di count true e count sono equivalenti.

Nelle serie temporali
Aggregazione serie temporali

Seleziona sum.

Il campo di aggregazione viene impostato automaticamente su sum quando i dati vengono raggruppati. Questa impostazione definisce il modo in cui vengono combinati i dati nelle singole serie temporali.

Nelle serie temporali
Raggruppa per serie temporali

Seleziona quota_metric.

Questa opzione raggruppa i dati in base al tipo di nome di quota_metric.

Completa la finestra di dialogo Configura trigger utilizzando le seguenti impostazioni. Queste impostazioni fanno sì che la criterio di avviso crei un avviso se il numero di errori di superamento della quota supera il valore 0 per 1 m. Qui viene selezionato un valore pari a 0 perché gli errori di superamento della quota sono imprevisti e indicano che è necessario aumentare una quota o modificare un servizio per ridurre le richieste API. Potresti voler utilizzare una soglia più alta.

Finestra di dialogo Configura trigger
Campo

Valore
Tipo di condizione Threshold
Trigger di avviso Any time series violates
Posizione soglia Above threshold
Valore soglia 0
Finestra di ripetizione test 1 m

Utilizzo dell'API Cloud Monitoring

Puoi creare questa criterio di avviso utilizzando il metodo API alertPolicies.create. Puoi richiamare l'API Cloud Monitoring direttamente, utilizzando Google Cloud CLI o le librerie client. Per saperne di più, consulta Creazione delle policy.

Per informazioni sulla rappresentazione delle policy di avviso in JSON o YAML, consulta Policy di esempio.

Di seguito è riportata una rappresentazione di questa criterio di avviso in 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",
  }

Generazione di avvisi per il valore assoluto quota/allocation/usage

Puoi creare una criterio di avviso per ricevere una notifica se l'utilizzo della quota di allocazione per un servizio specifico nel tuo progettoGoogle Cloud supera una soglia specificata dall'utente. Puoi creare questo tipo di policy utilizzando la console Google Cloud o l'API Cloud Monitoring.

Utilizzo della console Google Cloud

Il resto dei contenuti di questa sottosezione riguarda la finestra di dialogo delle condizioni di una criterio di avviso.

Completa la finestra di dialogo Nuova condizione utilizzando le impostazioni nella tabella seguente. Queste impostazioni specificano che vuoi monitorare i dati delle serie temporali per la metrica serviceruntime /quota/allocation/usage per un servizio nel tuo progetto Google Cloud e che vuoi raggruppare i dati in base al limite della quota.

Finestra di dialogo Nuova condizione
Campo

Valore
Risorsa e metrica Nel menu Risorse, seleziona Quota consumer.
Nel menu Categorie di metriche, seleziona Quota.
Nel menu Metriche, seleziona Utilizzo della quota di allocazione.

(metric.type è serviceruntime.googleapis.com/quota/allocation/usage,
e resource.type è consumer_quota).
Filtro

Aggiungi un filtro in modo che il grafico mostri solo i dati relativi al servizio che vuoi monitorare. Ad esempio, per monitorare il servizio Identity and Access Management, aggiungi il seguente filtro: service = iam.googleapis.com.

Quando il campo del filtro è vuoto, nel grafico vengono inclusi tutti i dati delle metriche disponibili.

Finestra temporale continua Seleziona 1440 m

Il periodo corrisponde all'intervallo di campionamento per questa metrica.

Funzione finestra temporale continua Seleziona next older

La funzione finestra mobile è impostata su next older per includere il valore misurato più recente di questa metrica GAUGE.

Nelle serie temporali
Aggregazione serie temporali

Seleziona sum.

Il campo di aggregazione viene impostato automaticamente su sum quando i dati vengono raggruppati. Questa impostazione definisce il modo in cui vengono combinati i dati nelle singole serie temporali.

Nelle serie temporali
Raggruppa per serie temporali

Seleziona quota_metric.

Questa opzione raggruppa i dati in base al tipo di nome di quota_metric.

Completa la finestra di dialogo Configura trigger utilizzando le seguenti impostazioni. Queste impostazioni fanno sì che la criterio di avviso crei un avviso se il valore della serie temporale supera 2,5 per 1440 m. Il valore di 1440 m corrisponde alla finestra temporale. Per questo esempio è stato selezionato il valore 2,5, perché è leggermente superiore al valore normale per il sistema di test. Devi selezionare la soglia in base al servizio che stai monitorando, insieme a una comprensione dell'intervallo di valori previsto per la metrica.

Finestra di dialogo Configura trigger
Campo

Valore
Tipo di condizione Threshold
Trigger di avviso Any time series violates
Posizione soglia Above threshold
Valore soglia 2.5
Finestra di ripetizione test 1440 m

Utilizzo dell'API Cloud Monitoring

Puoi creare questa criterio di avviso utilizzando il metodo API alertPolicies.create. Puoi richiamare l'API Cloud Monitoring direttamente, utilizzando Google Cloud CLI o le librerie client. Per saperne di più, consulta Creazione delle policy.

Per informazioni sulla rappresentazione delle policy di avviso in JSON o YAML, consulta Policy di esempio.

Di seguito è riportata una rappresentazione di questa criterio di avviso in 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": "86400s",
          "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",
  }

Esempi di policy di avviso PromQL

PromQL è un linguaggio di query basato su testo che consente di creare query più potenti e flessibili rispetto a quelle che puoi creare con i filtri di Monitoring. Ti consigliamo di utilizzare PromQL per configurare policy di avviso basate su rapporti. Ad esempio, con PromQL puoi configurare un rapporto per l'utilizzo della quota di frequenza, che richiede il calcolo del rapporto tra una metrica di tipo Gauge (il limite) e una metrica di tipo Delta (la frequenza).

Puoi creare policy di avviso basate su PromQL utilizzando la console Google Cloud o l'API Monitoring:

  • ConsoleGoogle Cloud : utilizza l'editor di codice PromQL quando crei la condizione di avviso. Per visualizzare l'editor di codice PromQL, nella barra degli strumenti della finestra di dialogo Crea policy di avviso, fai clic su PromQL. Per saperne di più sull'utilizzo di questo editor, consulta Utilizza l'editor di codice per PromQL.

  • API Monitoring: utilizza il metodo alertPolicies.create e fornisci una condizione di tipo PrometheusQueryLanguageCondition. Questo tipo di condizione accetta una query PromQL come valore del campo. Per saperne di più sull'utilizzo dell'API Monitoring con PromQL, consulta Crea policy di avviso basate su PromQL.

Per informazioni specifiche su PromQL, consulta PromQL per Cloud Monitoring. Per saperne di più sulle policy di avviso basate su PromQL, consulta Policy di avviso basate su PromQL.

Policy di avviso che monitora il rapporto tra la quota di frequenza e il limite di quota

Il seguente pattern di query PromQL descrive una criterio di avviso che invia una notifica quando l'utilizzo della frequenza al minuto di un servizio di risorse specifico supera l'80% di un limite specifico:

(
  sum by (project_id, quota_metric, location) (increase({"serviceruntime.googleapis.com/quota/rate/net_usage", monitored_resource="consumer_quota", service="sample.googleapis.com"}[1m]))
  /
  max by (project_id, quota_metric, location) ({"serviceruntime.googleapis.com/quota/limit", monitored_resource="consumer_quota", service="sample.googleapis.com", limit_name="Limit"})
) > 0.8

Per utilizzare questo pattern di query, apporta le seguenti modifiche:

  • Sostituisci sample.googleapis.com con il servizio che vuoi monitorare.
  • Sostituisci Limit per limit_name con il limite che vuoi monitorare. Per informazioni su come trovare i nomi dei limiti, consulta Identificazione delle metriche delle quote e dei nomi dei limiti.
  • Sostituisci 1m con una finestra appropriata per la query.

Non puoi creare questa query con i filtri.

Policy di avviso che monitora il rapporto della quota di frequenza con caratteri jolly

PromQL supporta l'applicazione di filtri con caratteri jolly, espressioni regolari e logica booleana. Ad esempio, puoi utilizzare PromQL per creare una criterio di avviso che monitora più limiti e ti avvisa se uno di questi supera una soglia.

Il seguente pattern di query PromQL descrive una criterio di avviso che invia notifiche quando l'utilizzo della frequenza al minuto o al giorno di un servizio di risorse supera l'80%:

(
  sum by (project_id, quota_metric, location) (increase({"serviceruntime.googleapis.com/quota/rate/net_usage", monitored_resource="consumer_quota", service=~".*"}[1m]))
  /
  max by (project_id, quota_metric, location) ({"serviceruntime.googleapis.com/quota/limit", monitored_resource="consumer_quota", service=~".*", limit_name=~".*PerMinute.*"})
)
or
(
  sum by (project_id, quota_metric, location) (increase({"serviceruntime.googleapis.com/quota/rate/net_usage", monitored_resource="consumer_quota", service=~".*"}[23h]))
  /
  max by (project_id, quota_metric, location) ({"serviceruntime.googleapis.com/quota/limit", monitored_resource="consumer_quota", service=~".*", limit_name=~".*PerDay.*"})
) > 0.8

Nella query precedente, l'argomento per l'allineatore giornaliero è impostato su 23 ore anziché su 1 giorno. PromQL può richiedere solo 25 ore di dati e, ai fini del calcolo, l'allineatore aggiunge un'ora al periodo di allineamento. Se utilizzi [1d], la condizione non può essere salvata perché richiede 25 ore di dati.

Per utilizzare questo pattern di query, apporta le seguenti modifiche:

  • Sostituisci l'espressione regolare per service=~ con un'espressione regolare per i servizi che vuoi monitorare.
  • Nel primo rapporto:
  • Nel secondo rapporto:
    • Sostituisci .*PerDay.* per limit_name=~ con un'espressione regolare per il secondo gruppo di limiti che vuoi monitorare.
    • Sostituisci 23h con una finestra appropriata per i tuoi limiti.

Non puoi creare questa query con i filtri.

Avviso sul rapporto di utilizzo della quota di allocazione per un limite

Il seguente pattern di query PromQL descrive un avviso che monitora quando l'utilizzo dell'allocazione giornaliera di un servizio di risorse specifico supera l'80% di un limite specifico:

(
 max by (project_id, quota_metric, location) ({"serviceruntime.googleapis.com/quota/allocation/usage", monitored_resource="consumer_quota", service="sample.googleapis.com"})
 /
 min by (project_id, quota_metric, location) ({"serviceruntime.googleapis.com/quota/limit", monitored_resource="consumer_quota", service="sample.googleapis.com", limit_name="Limit"})
) > 0.8

Per utilizzare questo pattern di query, apporta le seguenti modifiche:

Esempio: utilizzo della CPU del 75% in qualsiasi regione

La seguente query crea una criterio di avviso che viene attivata quando l'utilizzo della CPU dell'istanza VM di Compute Engine supera il 75% del limite in qualsiasi regione:

(
 max by (project_id, quota_metric, location) ({"serviceruntime.googleapis.com/quota/allocation/usage", monitored_resource="consumer_quota", service="compute.googleapis.com"})
 /
 min by (project_id, quota_metric, location) ({"serviceruntime.googleapis.com/quota/limit", monitored_resource="consumer_quota", service="compute.googleapis.com", limit_name="CPUS-per-project-region"})
) > 0.75

Questa policy per le quote dei consumer utilizza il nome del limite CPUS-per-project-region nella quota "CPU" dell'API Compute Engine. Per informazioni su come trovare i nomi dei limiti, consulta Identificazione delle metriche delle quote e dei nomi dei limiti.

Policy di avviso che monitora il rapporto della quota di allocazione per qualsiasi servizio

PromQL supporta l'applicazione di filtri con caratteri jolly, espressioni regolari e logica booleana. Ad esempio, puoi utilizzare PromQL per creare un avviso che monitora più limiti o servizi e ti avvisa se uno di questi supera una soglia.

La seguente query PromQL descrive un avviso che monitora quando l'utilizzo dell'allocazione giornaliera di un servizio di risorse supera l'80% per uno dei limiti di quota:

(
 max by (project_id, quota_metric, location) ({"serviceruntime.googleapis.com/quota/allocation/usage", monitored_resource="consumer_quota"})
 /
 min by (project_id, quota_metric, location) ({"serviceruntime.googleapis.com/quota/limit", monitored_resource="consumer_quota"})
) > 0.8

Puoi utilizzare questa query così come viene presentata o filtrare i servizi in base a un'espressione regolare per i servizi che vuoi monitorare. Puoi anche filtrare in base a un servizio specifico e utilizzare i caratteri jolly in un filtro di limite.

Esempio: utilizzo della CPU superiore al 50% in zone specifiche

La seguente query crea una criterio di avviso che si attiva quando l'utilizzo della CPU delle istanze VM di Compute Engine supera il 50% del limite in una qualsiasi delle zone us-central1. Questa query filtra i dati limit in base al nome di un limite e alla località della risorsa:

(
max by (project_id, quota_metric, location) ({"serviceruntime.googleapis.com/quota/allocation/usage", monitored_resource="consumer_quota", service="compute.googleapis.com"})
/
min by (project_id, quota_metric, location) ({"serviceruntime.googleapis.com/quota/limit", monitored_resource="consumer_quota", service="compute.googleapis.com", limit_name="CPUS-per-project-zone", location=~"us-central1-.*"})
)
> 0.5

Questa policy per le quote dei consumer utilizza il nome del limite CPUS-per-project-zone nella quota "CPU" dell'API Compute Engine. Per informazioni su come trovare i nomi dei limiti, consulta Identificazione delle metriche delle quote e dei nomi dei limiti.

Avviso di rapporto che utilizza una quota specifica per la risorsa

Puoi utilizzare PromQL per configurare i rapporti per le metriche relative alle quote specifiche per le risorse. In questo caso, specifichi una risorsa monitorata specifica per il servizio e calcoli un rapporto su una coppia di metriche relative alle quote specifiche per la risorsa.

Il seguente pattern di query descrive un avviso che monitora quando l'utilizzo di una quota supera l'80% del limite:

(
 max by (resource_label_1, ..., resource_label_n, metric_label_1, ..., metric_label_n) ({"sample.googleapis.com/quota/samplemetric/usage", monitored_resource="sample.googleapis.com/SampleResource"})
 /
 min by (resource_label_1, ..., resource_label_n, metric_label_1, ..., metric_label_n) ({"sample.googleapis.com/quota/samplemetric/limit", monitored_resource="sample.googleapis.com/SampleResource"})
) > 0.8

Per utilizzare questo pattern di query, apporta le seguenti modifiche:

  • Sostituisci sample.googleapis.com con il servizio che vuoi monitorare.
  • Sostituisci SampleResource con la risorsa monitorata associata.
  • Sostituisci samplemetric con la stringa per un gruppo di tipi di metriche.
  • Nelle operazioni by (...), elenca ciascuna delle etichette delle risorse e delle metriche.

Esempio: utilizzo della CPU del 75% in qualsiasi regione

La seguente query PromQL configura una criterio di avviso che monitora quando l'utilizzo della quota instances_per_vpc_network di Compute Engine supera l'80% per qualsiasi ID di rete:

(
 max by (resource_container, limit_name, location, network_id) ({"compute.googleapis.com/quota/instances_per_vpc_network/usage", monitored_resource="compute.googleapis.com/VpcNetwork"})
 /
 min by (resource_container, limit_name, location, network_id) ({"compute.googleapis.com/quota/instances_per_vpc_network/limit", monitored_resource="compute.googleapis.com/VpcNetwork"})
) > 0.8

Tieni presente che questa query utilizza il tipo di risorsa compute.googleapis.com/VpcNetwork, non consumer_quota, e prende il rapporto tra due metriche compute.googleapis.com/quota/instances_per_vpc_network, usage e limit.

Esempio: utilizzo della quota di Dialogflow per un modello specifico

Alcune quote di utilizzo sono metriche di tipo DELTA. Gli avvisi relativi ai rapporti per questi tipi di metriche devono essere creati in modo diverso.

Ad esempio, la seguente query PromQL configura una criterio di avviso che monitora quando l'utilizzo della quota ConversationalAgentLLMTokensPerMinutePerBaseModelPerRegion di Dialogflow supera l'80% per un modello specifico in una regione specifica:

sum(
    rate(
        {"__name__"="dialogflow.googleapis.com/quota/ConversationalAgentLLMTokenConsumption/usage",
        "limit_name"="ConversationalAgentLLMTokensPerMinutePerBaseModelPerRegion",
        "monitored_resource"="dialogflow.googleapis.com/Location",
        "location"="us-central1",
        "base_model"="gemini-2.0-flash-lite-001"
      }[1m]
    ) * 60
  ) by (limit_name, location, base_model)

/

sum(
    max_over_time(
        {"__name__"="dialogflow.googleapis.com/quota/ConversationalAgentLLMTokenConsumption/limit",
        "limit_name"="ConversationalAgentLLMTokensPerMinutePerBaseModelPerRegion",
        "monitored_resource"="dialogflow.googleapis.com/Location",
        "location"="us-central1",
        "base_model"="gemini-2.0-flash-lite-001"
    }[1m]))
by (limit_name, location, base_model)

> .8

Tieni presente che questa query utilizza il tipo di risorsa dialogflow.googleapis.com/Location, non consumer_quota, e prende il rapporto tra due metriche dialogflow.googleapis.com/quota/ConversationalAgentLLMTokenConsumption, usage e limit.

Esempi di grafici

I grafici mostrano i dati delle serie temporali. Puoi utilizzare Metrics Explorer per creare un grafico. Con Esplora metriche puoi eliminare il grafico quando non ti serve più oppure salvarlo in una dashboard. Nella visualizzazione della dashboard, puoi aggiungere un grafico alla dashboard.

Se vuoi configurare solo un grafico che visualizza i dati della quota, puoi utilizzare le impostazioni nella tabella Nuova condizione. Le condizioni di avviso utilizzano una notazione diversa rispetto agli strumenti per i grafici. Gli strumenti per i grafici includono Esplora metriche e la configurazione dei grafici nelle dashboard personalizzate:
Nuova condizione: nome del campo
Grafici
Funzione finestra temporale continua

Configurazione ottimale in base alle impostazioni di metrica e aggregazione selezionate.

Per specificare la funzione di allineamento, procedi nel seguente modo:

  1. Nell'elemento Aggregazione, espandi il primo menu e seleziona Configura allineatore. Vengono aggiunti gli elementi Funzione di allineamento e Raggruppamento.
  2. Espandi l'elemento Funzione di allineamento ed effettua una selezione.

Finestra temporale continua Intervallo minimo
(per accedere, fai clic su Aggiungi elemento di query)
Raggruppamento per serie temporali
(nella sezione Nelle serie temporali)
Secondo menu dell'elemento Aggregazione
Aggregazione serie temporali
(nella sezione Nelle serie temporali)
Primo menu dell'elemento Aggregazione

Serie temporale per quota/rate/net_usage

Per visualizzare i dati delle serie temporali per la metrica serviceruntime quota/rate/net_usage, per tutti i servizi nel tuo progetto Google Cloud , dove i dati sono raggruppati per nome della metrica della quota e viene visualizzata la frequenza di utilizzo, utilizza le seguenti impostazioni:

Finestra di dialogo Nuova condizione
Campo

Valore
Risorsa e metrica Nel menu Risorse, seleziona Quota consumer.
Nel menu Categorie di metriche, seleziona Quota.
Nel menu Metriche, seleziona Utilizzo della quota di frequenza.

(metric.type è serviceruntime.googleapis.com/quota/rate/net_usage,
e resource.type è consumer_quota).
Filtro

Aggiungi un filtro in modo che il grafico mostri solo i dati relativi al servizio che vuoi monitorare. Ad esempio, per monitorare il servizio Identity and Access Management, aggiungi il seguente filtro: service = iam.googleapis.com.

Quando il campo del filtro è vuoto, nel grafico vengono inclusi tutti i dati delle metriche disponibili.

Finestra temporale continua Seleziona 1 m

Il periodo di 1 minuto corrisponde all'intervallo di campionamento per questa metrica.

Funzione finestra temporale continua Seleziona rate

Impostando l'allineatore sul valore rate, i valori archiviati nella serie temporale per questa metrica DELTA vengono convertiti in una nuova serie temporale che archivia i dati sulla frequenza. L'asse Y del grafico ha le unità di quota al secondo.

Nelle serie temporali
Aggregazione serie temporali

Seleziona sum.

Il campo di aggregazione viene impostato automaticamente su sum quando i dati vengono raggruppati. Questa impostazione definisce il modo in cui vengono combinati i dati nelle singole serie temporali.

Nelle serie temporali
Raggruppa per serie temporali

Seleziona quota_metric.

Questa opzione raggruppa i dati in base al tipo di nome di quota_metric.

Serie temporale per quota/instances_per_vpc_network/limit

Per visualizzare i dati delle serie temporali per la metrica quota/instances_per_vpc_network/limitcompute.googleapis.com, per tutte le reti nel tuo progetto Google Cloud , utilizza le seguenti impostazioni:

Finestra di dialogo Nuova condizione
Campo

Valore
Risorsa e metrica Nel menu Tipo di risorsa, seleziona Rete VPC.
Nel menu Categoria metrica, seleziona quota.
Nel menu Metrica, seleziona Limite di quota per le istanze per rete VPC.

(metric.type è compute.googleapis.com/quota/instances_per_vpc_network/limit,
resource.type è compute.googleapis.com/VpcNetwork).
Filtro Lascia vuoto
Finestra temporale continua Seleziona 1 m

Il periodo corrisponde all'intervallo di campionamento per questa metrica.

Funzione finestra temporale continua Seleziona mean
Nelle serie temporali
Aggregazione serie temporali
Lascia come none
Nelle serie temporali
Raggruppa per serie temporali
Lascia vuoto

Serie temporale per quota/instances_per_vpc_network/usage

Per visualizzare i dati delle serie temporali per la metrica quota/instances_per_vpc_network/usage compute.googleapis.com, per una delle reti nel tuo progetto Google Cloud , utilizza le seguenti impostazioni:

Finestra di dialogo Nuova condizione
Campo

Valore
Risorsa e metrica Nel menu Tipo di risorsa, seleziona Rete VPC.
Nel menu Categoria metrica, seleziona quota.
Nel menu Metrica, seleziona Istanze per utilizzo della quota di rete VPC.

(metric.type è compute.googleapis.com/quota/instances_per_vpc_network/usage,
resource.type è compute.googleapis.com/VpcNetwork).
Metrica Nel menu Metrica, seleziona compute.googleapis.com/quota/instances_per_vpc_network/usage.
Filtro

Aggiungi un filtro in modo che il grafico mostri solo un sottoinsieme di tutti i dati. Ad esempio, per visualizzare l'utilizzo di una rete specifica, aggiungi il seguente filtro: network_id = identifier.

Quando il campo del filtro è vuoto, nel grafico vengono inclusi tutti i dati delle metriche disponibili.

Finestra temporale continua Seleziona 1 m

Il periodo corrisponde all'intervallo di campionamento per questa metrica.

Funzione finestra temporale continua Seleziona mean
Nelle serie temporali
Aggregazione serie temporali
Lascia come none
Nelle serie temporali
Raggruppa per serie temporali
Lascia vuoto

Grafici PromQL

Puoi utilizzare le query PromQL per creare grafici utilizzando l'editor di codice PromQL. Ad esempio, nell'editor di codice puoi inserire una qualsiasi delle query mostrate negli esempi di criterio di avviso PromQL. Puoi omettere l'operatore di confronto alla fine, ad esempio > 0.8, in ogni query; si applica solo quando crei una condizione per una criterio di avviso. In un grafico, l'impostazione di una condizione con un operatore di confronto non ha alcun effetto.

Per saperne di più, consulta Utilizza l'editor di codice per PromQL.