Crea criteri di avviso per soglia di metriche

Questo documento descrive come utilizzare la console Google Cloud per creare un criterio di avviso basato su metriche che invia notifiche quando i valori di una metrica sono superiori o inferiori alla soglia per una specifica finestra di durata. Ad esempio, la condizione di un criterio di avviso potrebbe essere soddisfatta quando l'utilizzo della CPU è superiore all'80% per almeno cinque minuti.

Questi contenuti non si applicano ai criteri di avviso basati su log. Per informazioni sui criteri di avviso basati su log, che inviano una notifica quando un determinato messaggio viene visualizzato nei log, consulta Monitoraggio dei log.

Questo documento non descrive quanto segue:

Prima di iniziare

  1. Per ottenere le autorizzazioni necessarie per creare e modificare i criteri di avviso utilizzando la console Google Cloud, chiedi all'amministratore di concederti il ruolo IAM Editor Monitoring (roles/monitoring.editor) per il tuo progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.

    Potresti anche essere in grado di ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.

    Per ulteriori informazioni sui ruoli di Cloud Monitoring, consulta Controllare l'accesso con Identity and Access Management.

  2. Assicurati di acquisire familiarità con i concetti generali dei criteri di avviso. Per informazioni su questi argomenti, consulta la Panoramica degli avvisi.

  3. Configura i canali di notifica che vuoi utilizzare per ricevere eventuali avvisi. Per motivi di ridondanza, ti consigliamo di creare più tipi di canali di notifica. Per maggiori informazioni, consulta Creare e gestire canali di notifica.

Crea criterio di avviso

Per creare un criterio di avviso che confronti il valore di quella metrica con una soglia statica:

  1. Nel pannello di navigazione della console Google Cloud, seleziona Monitoring e poi  Avvisi:

    Vai ad Avvisi

  2. Seleziona Crea criterio.
  3. Seleziona le serie temporali da monitorare:

    1. Fai clic su Seleziona una metrica, naviga tra i menu per selezionare un tipo di risorsa e un tipo di metrica, poi fai clic su Applica.

      Il menu Seleziona una metrica contiene funzionalità che ti aiutano a trovare i tipi di metriche disponibili:

      • Per trovare un tipo di metrica specifico, utilizza la barra dei filtri. Ad esempio, se inserisci util, limiti il menu alla visualizzazione delle voci che includono util. Le voci vengono mostrate quando superano un test "contains" senza distinzione tra maiuscole e minuscole.
      • Per visualizzare tutti i tipi di metriche, anche quelli senza dati, fai clic su Attivo. Per impostazione predefinita, i menu mostrano solo i tipi di metriche con dati. Per maggiori informazioni, consulta Metrica non elencata nel menu.

      Puoi monitorare qualsiasi metrica integrata o qualsiasi metrica definita dall'utente.

    2. (Facoltativo) Per monitorare un sottoinsieme delle serie temporali che corrisponde ai tipi di metrica e di risorse selezionati nel passaggio precedente, fai clic su Aggiungi filtro. Nella finestra di dialogo del filtro, seleziona l'etichetta in base alla quale filtrare, un elemento di confronto e il valore del filtro. Ad esempio, il filtro zone =~ ^us.*.a$ utilizza un'espressione regolare per trovare la corrispondenza di tutti i dati delle serie temporali il cui nome della zona inizia con us e termina con a. Per ulteriori informazioni, consulta Filtrare le serie temporali selezionate.

    3. (Facoltativo) Per modificare il modo in cui i punti in una serie temporale sono allineati, nella sezione Trasforma dati, imposta i campi Finestra temporale continua e Funzione della finestra temporale continua.

      Questi campi specificano il modo in cui vengono combinati i punti registrati in una finestra. Ad esempio, supponiamo che la finestra sia di 15 minuti e che la funzione finestra sia max. Il punto allineato è il valore massimo di tutti i punti negli ultimi 15 minuti. Per maggiori informazioni, consulta Allineamento: regolarizzazione all'interno della serie.

      Puoi anche monitorare la frequenza con cui cambia il valore di una metrica utilizzando il campo Funzione finestra temporale continua per variare percentuale. Per ulteriori informazioni, consulta l'articolo Monitorare la frequenza di modifica.

    4. (Facoltativo) Combina le serie temporali se vuoi ridurre il numero di serie temporali monitorate da un criterio o quando vuoi monitorare solo una raccolta di serie temporali. Ad esempio, anziché monitorare l'utilizzo della CPU di ogni istanza VM, potresti voler calcolare la media dell'utilizzo della CPU per tutte le VM in una zona e, quindi, monitorare questa media. Per impostazione predefinita, le serie temporali non vengono combinate. Per informazioni generali, consulta Riduzione: combinazione di serie temporali.

      Per combinare tutte le serie temporali:

      1. Nella sezione In tutte le serie temporali, fai clic su Espandi.
      2. Imposta il campo Aggregazione di serie temporali su un valore diverso da none. Ad esempio, per visualizzare il valore medio delle serie temporali, seleziona mean.
      3. Assicurati che il campo Raggruppa per serie temporali per sia vuoto.

      Per combinare o raggruppare le serie temporali in base ai valori delle etichette:

      1. Nella sezione In tutte le serie temporali, fai clic su Espandi.
      2. Imposta il campo Aggregazione di serie temporali su un valore diverso da none.
      3. Nel campo Raggruppa per serie temporali, seleziona le etichette in base alle quali raggruppare.

      Ad esempio, se raggruppi in base all'etichetta zone e poi imposti il campo di aggregazione su un valore di mean, il grafico mostra una serie temporale per ogni zona per la quale esistono dati. Le serie temporali mostrate per una zona specifica rappresentano la media di tutte le serie temporali con quella zona.

    5. Tocca Avanti.

  4. Configura l'attivatore della condizione:

    1. Lascia il campo Tipo di condizione sul valore predefinito di Soglia.

    2. Seleziona un valore per il menu Attivatore di avvisi. Questo menu consente di specificare il sottoinsieme di serie temporali che deve violare la soglia prima che la condizione sia soddisfatta.

    3. Inserisci quando il valore di una metrica viola la soglia utilizzando i campi Posizione soglia e Valore soglia. Ad esempio, se imposti questi valori su Al di sopra della soglia e su 0.3, qualsiasi misurazione superiore a 0.3 viola la soglia.

    4. (Facoltativo) Per selezionare per quanto tempo le misurazioni devono violare la soglia prima che Monitoring invii una notifica, espandi Opzioni avanzate e poi utilizza il menu Finestra di test.

      Il valore predefinito è Nessun nuovo test. Con questa impostazione, una singola misurazione può generare una notifica. Per ulteriori informazioni e un esempio, vedi Impostazioni del periodo e della durata di allineamento.

    5. (Facoltativo) Per specificare in che modo Monitoring valuta la condizione all'arrivo dei dati, espandi Opzioni avanzate e poi utilizza il menu Valutazione dati mancanti.

      Il menu Dati mancanti valutazione è disattivato quando il valore della Finestra di nuovo test è Nessun nuovo test.

      Console Google Cloud
      Campo "Valutazione di dati mancanti"
      Riepilogo Dettagli
      Dati mancanti vuoti Gli incidenti aperti rimangono aperti.
      I nuovi incidenti non vengono aperti.

      Per condizioni che sono soddisfatte, la condizione continua a essere soddisfatta all'interruzione dei dati. Se un incidente è aperto per questa condizione, rimane aperto. Se un incidente è aperto e non arrivano dati, il timer per la chiusura automatica si avvia dopo un ritardo di almeno 15 minuti. Se il timer scade, l'incidente viene chiuso.

      Per condizioni che non sono soddisfatte, la condizione continua a non essere soddisfatta all'interruzione dei dati.

      Punti dati mancanti trattati come valori che violano la condizione delle norme Gli incidenti aperti rimangono aperti.
      È possibile aprire nuovi incidenti.

      Per condizioni che sono soddisfatte, la condizione continua a essere soddisfatta all'interruzione dei dati. Se un incidente è aperto per questa condizione, rimane aperto. Quando un incidente è aperto e non arrivano dati per la durata della chiusura automatica più 24 ore, l'incidente viene chiuso.

      Per condizioni che non sono soddisfatte, questa impostazione fa sì che la condizione di soglia di metrica si comporti come un metric-absence condition. Se i dati non arrivano nel tempo specificato nella finestra di test, la condizione viene valutata come soddisfatta. Per un criterio di avviso con una condizione, la condizione soddisfatta determina l'apertura di un incidente.

      Punti dati mancanti trattati come valori che non violano la condizione delle norme Gli incidenti aperti sono chiusi.
      I nuovi incidenti non vengono aperti.

      Per condizioni che sono soddisfatte, la condizione si interrompe all'arrivo dei dati. Se un incidente è aperto per questa condizione, viene chiuso.

      Per condizioni che non sono soddisfatte, la condizione continua a non essere soddisfatta all'interruzione dei dati.

    6. Tocca Avanti.

  5. (Facoltativo) Crea un criterio di avviso con più condizioni.

    La maggior parte dei criteri monitora un singolo tipo di metrica. Ad esempio, un criterio potrebbe monitorare il numero di byte scritti in un'istanza VM. Se vuoi monitorare più tipi di metriche, crea un criterio con più condizioni. Ogni condizione monitora un tipo di metrica. Dopo aver creato le condizioni, puoi specificare in che modo vengono combinate. Per informazioni, consulta la pagina Norme con più condizioni.

    Per creare un criterio di avviso con più condizioni:

    1. Per ogni condizione aggiuntiva, fai clic su Aggiungi condizione di avviso e configura quella condizione.
    2. Fai clic su Avanti e configura la combinazione delle condizioni.
    3. Fai clic su Avanti per passare alle notifiche e alla configurazione della documentazione.
  6. Configura le notifiche:

    1. Espandi il menu Notifiche e nome e seleziona i tuoi canali di notifica. Per motivi di ridondanza, consigliamo di aggiungere a un criterio di avviso più tipi di canali di notifica. Per saperne di più, vedi Gestire i canali di notifica.

    2. (Facoltativo) Per ricevere una notifica quando un incidente viene chiuso, seleziona Notifica alla chiusura dell'incidente. Per impostazione predefinita, quando crei un criterio di avviso con la console Google Cloud, viene inviata una notifica solo quando viene creato un incidente.

    3. (Facoltativo) Per modificare il tempo di attesa di Monitoring prima di chiudere un incidente dopo l'arrivo dei dati, seleziona un'opzione dal menu Durata della chiusura automatica dell'incidente. Per impostazione predefinita, quando i dati non arrivano, Monitoring attende sette giorni prima di chiudere un incidente aperto.

    4. Seleziona un'opzione dal menu Livello di gravità del criterio. Gli incidenti e le notifiche mostrano il livello di gravità.

    5. (Facoltativo) Per aggiungere etichette personalizzate al criterio di avviso, nella sezione Etichette utente dei criteri, segui questi passaggi:

      1. Fai clic su Aggiungi etichetta e inserisci un nome per l'etichetta nel campo Chiave. I nomi delle etichette devono iniziare con una lettera minuscola e possono contenere lettere minuscole, numeri, trattini bassi e trattini. Ad esempio, inserisci severity.
      2. Fai clic su Valore e inserisci un valore per l'etichetta. I valori delle etichette possono contenere lettere minuscole, numeri, trattini bassi e trattini. Ad esempio, inserisci critical.

      Per informazioni su come utilizzare le etichette dei criteri per gestire gli avvisi, consulta Annotare gli avvisi con etichette.

  7. (Facoltativo) Nella sezione Documentazione, inserisci i contenuti che vuoi includere nella notifica.

    Per formattare la documentazione, puoi utilizzare testo normale, Markdown e variabili. Puoi anche includere link per aiutare gli utenti a eseguire il debug dell'incidente, ad esempio link a playbook interni, dashboard di Google Cloud e pagine esterne. Ad esempio, il seguente modello di documentazione descrive un incidente di utilizzo della CPU per una risorsa gce_instance e include diverse variabili per fare riferimento al criterio di avviso e alle risorse REST della condizione. Il modello di documentazione indirizza poi i lettori a pagine esterne per facilitare il debug.

    Quando le notifiche vengono create, Monitoring sostituisce le variabili della documentazione con i relativi valori. I valori sostituiscono le variabili solo nelle notifiche. Il riquadro di anteprima e altre posizioni nella console Google Cloud mostrano solo la formattazione Markdown.

    Anteprima

    ## CPU utilization exceeded
    
    ### Summary
    
    The ${metric.display_name} of the ${resource.type}
    ${resource.label.instance_id} in the project ${resource.project} has
    exceeded 90% for over 15 minutes.
    
    ### Additional resource information
    
    Condition resource name: ${condition.name}
    Alerting policy resource name: ${policy.name}
    
    ### Troubleshooting and Debug References
    
    Repository with debug scripts: example.com
    Internal troubleshooting guide: example.com
    ${resource.type} dashboard: example.com
    

    Formatta nella notifica

    Esempio di come viene visualizzata la documentazione in una notifica.

    Per maggiori informazioni, consulta Annotare gli avvisi con la documentazione definita dall'utente e Utilizzare i controlli del canale.

  8. Fai clic su Nome avviso e inserisci un nome per il criterio di avviso.

  9. Fai clic su Crea criterio.

Filtra le serie temporali selezionate

I filtri assicurano che vengano monitorate solo le serie temporali che soddisfano alcuni criteri. Quando applichi i filtri, puoi ridurre il numero di linee sul grafico, per migliorarne le prestazioni. Puoi anche ridurre la quantità di dati monitorati applicando l'aggregazione. I filtri assicurano che vengano utilizzate solo le serie temporali che soddisfano alcuni criteri. Quando applichi i filtri, sono presenti meno serie temporali da valutare, il che può migliorare le prestazioni dell'avviso.

Un filtro è composto da un'etichetta, un criterio di confronto e un valore. Ad esempio, per trovare corrispondenze di tutte le serie temporali la cui etichetta zone inizia con "us-central1", potresti utilizzare il filtro zone=~"us-central1.*", che utilizza un'espressione regolare per eseguire il confronto.

Quando filtri in base all'ID progetto o al container di risorse, devi utilizzare l'operatore uguale a (=). Quando filtri in base ad altre etichette, puoi utilizzare qualsiasi strumento di confronto supportato. In genere, puoi filtrare le etichette delle metriche e delle risorse e per gruppo di risorse.

Quando fornisci più criteri di filtro, vengono monitorate solo le serie temporali che soddisfano tutti i criteri.

Per aggiungere un filtro, fai clic su Aggiungi filtro, completa la finestra di dialogo e fai clic su Fine. Nella finestra di dialogo, utilizza il campo Filtro per selezionare il criterio in base al quale filtrare, selezionare l'operatore di confronto e quindi selezionare il valore. Ogni riga nella tabella seguente elenca un operatore di confronto, il relativo significato e un esempio:

OperatoreSignificatoEsempio
= Uguaglianza resource.labels.zone = "us-central1-a"
!= Disuguaglianza resource.labels.zone != "us-central1-a"
=~ Uguaglianza dell'espressione regolare2 monitoring.regex.full_match("^us.*")
!=~ Disuguaglianza dell'espressione regolare2 monitoring.regex.full_match("^us.*")
starts_with Il valore inizia con resource.labels.zone = starts_with("us")
ends_with Il valore termina con resource.labels.zone = ends_with("b")
has_substring Il valore contiene resource.labels.zone = has_substring("east")
one_of Una tra resource.labels.zone = one_of("asia-east1-b", "europe-north1-a")
!starts_with Il valore non inizia con resource.labels.zone != starts_with("us")
!ends_with Il valore non termina con resource.labels.zone != ends_with("b")
!has_substring Il valore non contiene resource.labels.zone != has_substring("east")
!one_of Il valore non è uno di resource.labels.zone != one_of("asia-east1-b", "europe-north1-a")

Risolvere i problemi

Questa sezione contiene suggerimenti per la risoluzione dei problemi.

Metrica non elencata nel menu delle metriche disponibili

Per monitorare una metrica non elencata nel menu Seleziona una metrica, procedi in uno dei seguenti modi:

  • Per creare un criterio di avviso che monitori una metrica Google Cloud, espandi il menu Seleziona una metrica e fai clic su Attivo. Se disabilitato, il menu elenca tutte le metriche per i servizi Google Cloud e tutte le metriche con dati.

  • Per configurare una condizione per un tipo di metrica personalizzata prima che quel tipo di metrica generi dati, devi specificare il tipo di metrica utilizzando un filtro di Monitoring:

    1. Selezionare ? sull'intestazione della sezione Seleziona metrica, quindi seleziona Modalità filtro diretto nella descrizione comando.
    2. Inserisci un filtro di monitoraggio o un selettore di serie temporali. Per informazioni sulla sintassi, consulta i seguenti documenti:

Monitoraggio del tasso di variazione

Per monitorare la frequenza di modifica del valore di una metrica, imposta il campo Funzione finestra temporale continua su Variazione percentuale, quindi Monitoring confronta la frequenza di modifica della metrica con la soglia. Quando selezioni la funzione di variazione percentuale, Monitoring procede nel seguente modo:

  1. Se la serie temporale ha un tipo di metrica DELTA o CUMULATIVE, viene convertita in una serie con tipo di metrica GAUGE. Per informazioni sulla conversione, consulta Tipi, tipi e conversioni.
  2. Calcola la percentuale modificata confrontando il valore medio nell'ultimo periodo di 10 minuti con il valore medio del periodo di 10 minuti precedente la finestra di test.

La finestra temporale di 10 minuti è un valore fisso e non può essere modificata. Tuttavia, è necessario specificare la finestra di test quando crei una condizione.

Passaggi successivi