Grafico e monitoraggio delle metriche delle quote

Questo documento descrive come creare criteri di avviso e grafici da monitorare allocata da Google Cloud e sono inclusi diversi esempi. Google Cloud stabilisce varie quote che puoi utilizzare per monitorare e limitare le risorse utilizzate da un progetto o organizzazione. Per informazioni generali sulle quote, inclusi informazioni sulle quote di allocazione e di frequenza, vedi Utilizzo delle quote.

Prima di iniziare

In questo documento si presuppone una certa familiarità con i dati delle serie temporali e i relativi o manipolazione. Le seguenti risorse forniscono informazioni aggiuntive:

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

Gestione delle quote

Cloud Monitoring gestisce la quota in due modi:

  • Quota consumer: per questo tipo di quota, la risorsa monitorata è consumer_quota. Le metriche per questa risorsa sono un sottoinsieme delle metriche serviceruntime.

    La maggior parte degli esempi in questa pagina sono esempi di quote del consumatore.

  • Quote specifiche per risorsa: alcuni servizi forniscono risorse monitorate con metriche specifiche per risorsa per le quote. Questi tipi di metriche vengono visualizzati in gruppi di tre e hanno 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 alla quota associate a questa risorsa sono un compute.googleapis.com/quota sottoinsieme delle metriche compute. Esistono tre tipi di metriche relative alla quota "Istanze per rete VPC":

Identifica le metriche relative alle quote e i nomi dei limiti

I dati non elaborati sul consumo di 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 un criterio di avviso, devi identificare il sottoinsieme di dati della quota.

A seconda dell'origine, i dati delle quote potrebbero includere etichette che per isolare le informazioni desiderate. Queste etichette includono:

  • Metrica della quota: è un identificatore di un tipo di quota. Non è uno dei tipi di metrica descritti in Metriche. dall'elenco di lettura. Ad esempio, tutti i dati relativi alla quota del consumatore vengono scritti come serviceruntime.googleapis.com tipo di metrica come 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'allocazione e l'utilizzo.
  • Nome limite: il nome limite identifica un limite per un tipo specifico di quota. Una quota può avere più di un limite associato. Ad esempio, una quota per le chiamate di lettura potrebbe avere un limite di 100 chiamate al minuto e un limite giornaliero di 1000 chiamate, con due nomi di limite, readsPerMinute e readsPerDay. I tipi di metriche relative alla quota 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 alcune includono l'etichetta limit_name. I tipi di metriche specifiche delle risorse per la quota includono l'etichetta limit_name.

Non tutti i servizi Google Cloud supportano le metriche delle quote. Per determinare se un servizio supporta le metriche della 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 Pagina 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 Console di 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 è vuoto, la risorsa monitorata per la quota è consumer_quota.
  3. Individua la quota di interesse.

    Ad esempio, la quota delle sottoreti dell'API Compute Engine elenca la metrica come compute.googleapis.com/subnetworks, il nome del limite come SUBNETWORKS-per-project e non elenca una risorsa monitorata. Pertanto, la risorsa monitorata per questa quota è consumer_quota.

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

L'obiettivo è creare un grafico che mostri, per regione, le quota totale di spazio di archiviazione su disco. Questo esempio di quota consumer recupera Dati di quota/allocation/usage e poi i filtri in modo che venga visualizzato l'utilizzo dell'allocazione per una metrica di quota specifica:

  1. Nella console Google Cloud, seleziona Monitoraggio cloud e poi seleziona esplora metriche.

  2. Seleziona la scheda Configurazione.

  3. Nella barra degli strumenti, imposta l'intervallo di tempo su un mese selezionando 1M.

  4. Espandi il menu Grafico a linee e seleziona Grafico a barre in pila.

  5. Configura Metrics Explorer per visualizzare l'utilizzo della quota di allocazione:

    1. Fai clic su Seleziona una metrica e inserisci allocation nel Barra dei filtri.
    2. Seleziona Consumer Quota (Quota consumer) per la risorsa.
    3. Seleziona Quota per la categoria di metriche.
    4. Seleziona Utilizzo quota di allocazione per la metrica e fai clic su Applica.

    Seleziona la quota consumer.

    Il grafico mostra l'utilizzo della quota di allocazione sotto forma di grafico a barre per il periodo. di sei settimane. La legenda mostra che il grafico mostra la 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 del filtro espandendo il menu Tipo di risorsa ed poi seleziona Modalità di filtro diretto.

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

    Filtra la quota consumer per servizio di calcolo.

    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"
    

    Ora il grafico mostra la serie temporale relativa all'utilizzo della quota allocata 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 le serie temporali per la quota totale di spazio di archiviazione su disco di Compute Engine.

    Il grafico mostra l'utilizzo delle quote solo per le quote che sono state registrate all'utilizzo delle risorse. Ad esempio, se il progetto non utilizza Compute Engine risorse, filtrando in base ai risultati del servizio compute.googleapis.com in un grafico senza dati.

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

    Filtra la quota consumer in base alla 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"
    
  8. 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 solo i dati relativi alle regioni, senza zone, aggiungi un filtro basato sull'etichetta location. In questo esempio, in cui entrambe le regioni hanno come prefisso us- e terminano con 1, un filtro che utilizza l'espressione regolare location =~ ^us.*1$ funziona bene:

    Filtra per regione e metrica di quota.

Per la quota consumer, il valore dell'etichetta quota_metric identifica sia il servizio sia l'utilizzo della quota specifica da monitorare. Quando crei grafici o criteri di avviso che monitorano una metrica di quota specifica, utilizzi tali informazioni.

Criteri di avviso in Cloud Monitoring

I criteri di avviso consentono di configurare Monitoring per inviare notifiche quando si verifica qualcosa, come il raggiungimento dell'85% del limite su una quota.

Un criterio di avviso è un insieme di condizioni e informazioni di notifica:

  • Una condizione descrive cosa viene monitorato, come la serie temporale di dati di quella risorsa devono essere combinati e quando un incidente generati. Un criterio di avviso deve specificare almeno una condizione.
  • Il canale di notifica specifica chi deve ricevere una notifica e come deve essere inviata quando si verifica un incidente. Ad esempio, puoi configurare il criterio di avviso per inviare email a una persona specifica o a un gruppo di persone.

Esistono due tecniche che puoi utilizzare per creare condizioni per i criteri di avviso:

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

  • Utilizzo di MQL per selezionare e manipolare i dati. MQL è un linguaggio di query basato su testo. Con l'editor di codice MQL, puoi creare query che non puoi creare con la tecnica basata su filtri. Ti consigliamo di utilizzare MQL per creare contenuti basati su un rapporto criteri di avviso. Per ulteriori informazioni, vedi Esempi di criteri di avviso MQL.

In questa pagina vengono illustrate entrambe le tecniche. Puoi anche creare grafici utilizzando entrambe le tecniche.

Filtra esempi di criteri di avviso

In questa sezione, ogni sottosezione include una rappresentazione JSON. di un criterio di avviso, insieme a due tabelle che descrivono come configurare il criterio 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 incidente.

Questi esempi si riferiscono all'approccio basato su filtri.

Nessuno di questi criteri calcola i rapporti. Per esempi basati su rapporti, consulta Esempi di criteri di avviso MQL.

Avvisi sugli errori quota/exceeded

Puoi creare un criterio di avviso per ricevere una notifica se in qualsiasi servizio Il progetto Google Cloud segnala un errore di quota superata. Puoi creare questo tipo di criterio utilizzando la console Google Cloud o l'API Cloud Monitoring.

Utilizzo della console Google Cloud

Il resto dei contenuti di questa sottosezione è per la finestra di dialogo delle condizioni di un criterio di avviso.

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

Campo della finestra di dialogo Nuova condizione
Valore
Risorsa e metrica Nel menu Resources (Risorse), seleziona Consumer Quota (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, tutti i dati delle metriche disponibili sono inclusi nel grafico.

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

Questa metrica è di tipo GAUGE, il che significa che ogni punto dati in la 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 temporale di count true e count sono equivalenti.

Tra serie temporali
Aggregazione di serie temporali

Seleziona sum.

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

Tra serie temporali
Raggruppa serie temporali per

Seleziona quota_metric.

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

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

Campo della finestra di dialogo Configura trigger
Valore
Tipo di condizione Threshold
Trigger di avviso Any time series violates
Posizione soglia Above threshold
Valore soglia 0
Finestra di nuovo test 1 min

Utilizzo dell'API Cloud Monitoring

Puoi creare questo 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 ulteriori informazioni, consulta la sezione Creare i criteri.

Per informazioni sulla rappresentazione dei criteri di avviso in formato JSON o YAML, vedi Esempi di criteri.

Di seguito è riportata una rappresentazione di questo 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",
  }

Avvisi relativi al valore assoluto quota/allocation/usage

Puoi creare un criterio di avviso per sapere se la quota di allocazione viene utilizzata per un servizio specifico Il progetto Google Cloud sta superando una soglia specificata dall'utente. Puoi creare questo tipo di criterio utilizzando la console Google Cloud oppure mediante l'API Cloud Monitoring.

Utilizzo della console Google Cloud

Il resto dei contenuti di questa sottosezione è per la finestra di dialogo delle condizioni di un criterio di avviso.

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

Campo della finestra di dialogo Nuova condizione

Valore
Risorsa e metrica Nel menu Risorse, seleziona Quota consumer.
Nel menu Categorie di metriche, seleziona Quota.
Nel menu Metriche, seleziona Utilizzo 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, tutti i dati delle metriche disponibili sono inclusi nel grafico.

Finestra temporale continua Seleziona 1440 m

Le corrispondenze del periodo rappresentano il campione predefinito 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 di serie temporali

Seleziona sum.

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

Tra serie temporali
Raggruppa serie temporali per

Seleziona quota_metric.

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

Completa la finestra di dialogo Configura trigger utilizzando le seguenti impostazioni. Queste impostazioni fanno sì che il 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 mobile. È stato selezionato il valore 2,5 per perché è leggermente superiore al valore normale dell'attributo di test di machine learning. Devi selezionare la soglia in base al servizio che stai monitorando, in combinazione con la conoscenza dell'intervallo di valori previsto per la metrica.

Campo della finestra di dialogo Configura trigger

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

Utilizzo dell'API Cloud Monitoring

Puoi creare questo 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 ulteriori informazioni, consulta la sezione Creare i criteri.

Per informazioni sulla rappresentazione dei criteri di avviso in JSON o YAML, consulta Criteri di esempio.

Di seguito è riportata una rappresentazione di questo 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 criteri di avviso MQL

MQL è un linguaggio di query basato su testo che utilizza una serie di operazioni collegate da barre verticali. MQL consente di creare cluster più flessibili e flessibili di quelle che puoi creare con i filtri di Monitoring. Ti consigliamo di utilizzare MQL per configurare i criteri di avviso basati su proporzioni. Ad esempio, con MQL puoi impostare un rapporto per l'utilizzo della quota in base alla tariffa, che richiede il calcolo del rapporto tra una metrica indicatore (il limite) e una metrica delta (la tariffa).

Puoi creare criteri di avviso basati su MQL utilizzando la console Google Cloud o l'API Monitoring:

  • Console Google Cloud: utilizza l'editor di codice MQL quando crei la condizione di avviso. Per visualizzare l'editor di codice, Nella barra degli strumenti della finestra di dialogo Crea criterio di avviso, fai clic su  Editor di query. Per ulteriori informazioni sull'utilizzo di questo editor, consulta Utilizzare l'editor di codice per MQL.

  • API Monitoring: utilizzare il metodo alertPolicies.create e fornisci la condizione il tipo MonitoringQueryLanguageCondition. Questo tipo di condizione accetta una query MQL come valore di campo. Per ulteriori informazioni sull'utilizzo dell'API Monitoring con MQL, consulta Creare condizioni per i criteri di avviso MQL.

Per informazioni specifiche su MQL, consulta Utilizzare Monitoring Query Language. Per ulteriori informazioni sugli avvisi basati su MQL vedi Criteri di avviso con MQL.

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

Il seguente pattern di query MQL descrive un criterio di avviso che invia una notifica quando l'utilizzo della tariffa al minuto di una risorsa specifica supera l'80% di un limite specifico:

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 == 'Limit'
    | group_by [resource.project_id, metric.quota_metric, resource.location],
        sliding(1m), max(val()) }
| ratio
| every 1m
| condition gt(val(), 0.8 '1')

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

  • Sostituisci sample.googleapis.com con il servizio che vuoi monitorare.
  • Sostituisci Limit di metric.limit_name con che vuoi monitorare. Per informazioni su come trovare i nomi dei limiti, consulta Identificazione delle metriche di quota e dei nomi dei limiti
  • Sostituisci 1m nelle funzioni delta_gauge e sliding con un finestra appropriata per il tuo limite.

Non modificare l'operazione every 1m, che determina la distanza tra i dati sono presenti nei risultati della query.

Non puoi creare questa query con i filtri.

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

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

Il seguente pattern di query MQL descrive un criterio di avviso che invia notifiche quando la frequenza di utilizzo per minuto o per giorno di qualsiasi servizio di risorse supera l'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(23h)
      | 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(23h), max(val()) }
    | ratio }
| union
| every 1m
| condition gt(val(), 0.8 '1')

Nella query precedente, l'argomento per l'allineatore delta_gauge è impostato su 23 ore anziché 1 giorno. MQL può richiedere solo 23 ore e 30 minuti di dati, e per scopi di calcolo, l'allineatore delta_gauge aggiunge un'ora al periodo di allineamento. Se utilizzi delta_gauge(1d), la condizione non può essere salvata perché richiede 25 ore di dati. Questo comportamento è diverso da quello dell'allineatorenext_older, che non aggiunge spazi al periodo di allineamento.

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

  • Sostituisci l'espressione regolare per resource.service con una per i servizi che vuoi monitorare.
  • Nel primo rapporto:
    • Sostituisci .*PerMinute.* per metric.limit_name con una normale per il primo gruppo di limiti che vuoi monitorare. Per informazioni su come trovare i nomi dei limiti, consulta Identificare le metriche relative alle quote e i nomi dei limiti
    • Sostituisci 1m nelle funzioni delta_gauge e sliding con un appropriata per i tuoi limiti.
  • Nel secondo rapporto:
    • Sostituisci .*PerDay.* per metric.limit_name con un'espressione regolare per il secondo gruppo di limiti da monitorare.
    • Sostituisci 23h nelle funzioni delta_gauge e sliding con un appropriata per i tuoi limiti.

Non modificare l'operazione every 1m, che determina la distanza tra i dati sono presenti nei risultati della query.

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 MQL descrive un avviso che monitora quando l'utilizzo dell'allocazione giornaliera di uno specifico servizio di risorse supera l'80% limite specifico:

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 == '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')

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

Non modificare l'operazione every 1m, che determina la distanza tra i dati sono presenti nei risultati della query.

Esempio: utilizzo della CPU del 75% in qualsiasi regione

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

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')

Questo criterio per le quote del consumatore utilizza il nome del limite CPUS-per-project-region nella sezione "CPU" dell'API Compute Engine quota. Per informazioni su come trovare i nomi dei limiti, consulta Identificare le metriche relative alle quote e i nomi dei limiti.

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

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

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

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')

Puoi utilizzare questa query così come è stata presentata oppure puoi sostituire l'espressione regolare per resource.service con un'espressione regolare per i servizi che ti interessano monitorare. Puoi anche filtrare in base a un servizio specifico e utilizzare i caratteri jolly in un filtro limite.

Non modificare l'operazione every 1m, che determina la distanza tra i dati sono presenti nei risultati della query.

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

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

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')

Questo criterio per le quote dei consumatori 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 di quota e dei nomi dei limiti.

Avviso sul rapporto con quota specifica della risorsa

Puoi utilizzare MQL per configurare i rapporti per le metriche relative alle quote specifiche per risorsa. In questo caso, devi specificare una risorsa monitorata e calcolano un rapporto su una coppia di dati relativi alla quota metriche di valutazione.

Il seguente pattern di query descrive un avviso che monitora quando l'utilizzo di una quota supera l'80% del 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')

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 group_by, elenca ciascuna delle etichette delle risorse e delle metriche.

Esempio: utilizzo della CPU del 75% in qualsiasi regione

Ad esempio, la seguente query MQL configura un avviso che monitora quando l'utilizzo della quota instances_per_vpc_network di Compute Engine supera l'80% per qualsiasi ID rete:

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')

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.

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 ne hai più bisogno o salvarlo in una dashboard. Nella visualizzazione della dashboard, puoi aggiungere un grafico alla dashboard.

Se vuoi configurare solo un grafico che mostri i dati sulle quote, puoi utilizzare le impostazioni nella tabella Nuova condizione. Le condizioni di avviso utilizzano una notazione diversa rispetto agli strumenti di creazione di grafici. Gli strumenti per la creazione di grafici includono Metrics Explorer e la configurazione di grafici nelle dashboard personalizzate:
Nome campo della finestra di dialogo Nuova condizione
Grafici
Funzione finestra temporale continua

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

Per specificare la funzione di allineamento, segui questi passaggi:

  1. Nell'elemento Aggregazione, espandi il primo menu e seleziona Configura allineatore. La funzione di allineamento e Vengono aggiunti elementi di 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)
Raggruppa serie temporali per
(nella sezione Nelle serie temporali)
Secondo menu dell'elemento di aggregazione
Aggregazione di serie temporali
(nella sezione Tra serie temporali)
Primo menu dell'elemento Aggregazione

Serie temporali 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 in base al nome della metrica della quota e viene visualizzata la percentuale di utilizzo, utilizza le seguenti impostazioni:

Campo della finestra di dialogo Nuova condizione

Valore
Risorsa e metrica Nel menu Resources (Risorse), seleziona Consumer Quota (Quota consumer).
Nel menu Categorie di metriche, seleziona Quota.
Nel menu Metriche, seleziona Utilizzo quota di frequenza.

(metric.type è serviceruntime.googleapis.com/quota/rate/net_usage,
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, tutti i dati delle metriche disponibili sono inclusi nel grafico.

Finestra scorrevole Seleziona 1 m

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

Funzione finestra temporale continua Seleziona rate

Se imposti l'allineatore sul valore rate, i valori memorizzati nella serie temporale per questa metrica DELTA vengono convertiti in una nuova serie temporale che memorizza i dati sulle tariffe. L'asse y del grafico contiene le unità di quota al secondo.

Tra serie temporali
Aggregazione di serie temporali

Seleziona sum.

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

Tra serie temporali
Raggruppa serie temporali per

Seleziona quota_metric.

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

Serie temporali per quota/instances_per_vpc_network/limit

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

Campo della finestra di dialogo Nuova condizione

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 di istanze per rete VPC.

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

Le corrispondenze del periodo sono l'intervallo di campionatura per questa metrica.

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

Serie temporale per quota/instances_per_vpc_network/usage

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

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

(metric.type è compute.googleapis.com/quota/instances_per_vpc_network/usage,
e 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 vedere l'utilizzo per una specifica rete, aggiungi il seguente filtro: network_id = identificatore.

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

Finestra scorrevole Seleziona 1 m

Le corrispondenze del periodo sono l'intervallo di campionatura per questa metrica.

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

Grafici MQL

Puoi utilizzare le query MQL per creare grafici utilizzando l'Editor di codice MQL. Ad esempio, qualsiasi query mostrata negli esempi di criteri di avviso MQL può essere inserita nell'editor di codice. Puoi omettere l'ultima operazione, condition, in ogni query; si applica, tranne quando si crea una condizione per criterio di avviso. In un grafico, l'operazione condition non produce alcun effetto.

Per ulteriori informazioni, consulta Utilizzare l'editor di codice per MQL e Esempi di MQL.