Questo documento descrive come utilizzare la console Google Cloud per creare un criterio di avviso che invii notifiche quando prevede che la soglia verrà violata entro la finestra di previsione imminente. Una previsione prevede se una serie temporale violerà o meno una soglia all'interno di una finestra di previsione, ovvero un periodo di tempo futuro. La finestra di previsione può variare da 1 ora (3600 secondi) a 2,5 giorni (216.000 secondi).
Questi contenuti non si applicano ai criteri di avviso basati su log. Per informazioni sui criteri di avviso basati su log, che ti avvisano quando un messaggio specifico viene visualizzato nei log, consulta Monitorare i log.
Questo documento non descrive quanto segue:
- Come ricevere una notifica quando i valori di una metrica sono superiori o inferiori a una soglia. Per ulteriori informazioni, consulta Creare criteri di avviso basati su soglie di metriche.
- Come ricevere una notifica quando i dati non arrivano più. Per ulteriori informazioni, consulta Creare criteri di avviso per l'assenza di metriche.
Come creare un criterio di avviso utilizzando l'API Cloud Monitoring. Per ulteriori informazioni, consulta Creare criteri di avviso utilizzando l'API.
Come creare un criterio di avviso la cui condizione include una query Monitoring Query Language (MQL). Questi criteri possono utilizzare una soglia statica o dinamica. Per ulteriori informazioni, consulta i seguenti documenti:
Informazioni sulle condizioni di previsione
Puoi utilizzare le previsioni per monitorare la maggior parte delle metriche. Tuttavia, quando monitori una risorsa vincolata, come quota, spazio su disco o utilizzo della memoria, una condizione di previsione può inviarti una notifica prima che la soglia venga violata. Questa funzionalità ti offre più tempo per rispondere al modo in cui la risorsa vincolata viene utilizzata prima che venga violata la soglia.
Per ogni serie temporale monitorata da una condizione di previsione, la condizione esegue l'istanza di un algoritmo decisionale. Dopo l'addestramento, l'algoritmo genera una previsione ogni volta che viene valutata la condizione. Ogni previsione è una previsione che la serie temporale violerà o meno la soglia all'interno della finestra di previsione. Se una serie temporale monitorata ha una periodicità regolare, l'algoritmo decisionale per quella serie temporale incorpora il comportamento periodico nelle sue previsioni.
Una condizione di previsione è soddisfatta quando si verifica una o entrambe le seguenti condizioni:
- Tutti i valori di una serie temporale durante un determinato periodo di riesami violano la soglia.
- Tutte le previsioni per una serie temporale specifica effettuate in una finestra di nuovo test prevedono che la serie temporale violerà la soglia all'interno della finestra di previsione.
Il tempo di addestramento iniziale di un algoritmo decisionale è pari al doppio della durata della finestra di previsione. Ad esempio, se la finestra di previsione è di un'ora, sono necessarie due ore di addestramento. L'algoritmo decisionale per ogni serie temporale viene addestrato in modo indipendente. Durante l'addestramento di un algoritmo decisionale, la relativa serie temporale soddisfa la condizione solo quando i valori della serie violano la soglia per la finestra di riesami specificata.
Al termine dell'addestramento iniziale, ogni algoritmo decisionale viene continuamente addestrato utilizzando dati che coprono fino a sei volte la durata della finestra di previsione. Ad esempio, quando la finestra di previsione è di un'ora, vengono utilizzate le sei ore di dati più recenti durante l'addestramento continuo.
Quando configuri una condizione di previsione e i dati non arrivano per più di 10 minuti, la previsione viene disattivata e la condizione opera come una condizione di soglia metrica.
Gli incidenti vengono creati quando la previsione prevede che una serie temporale violi la soglia della condizione all'interno del periodo di previsione. Il monitoraggio chiude automaticamente l'incidente quando la previsione prevede che le serie temporali non violeranno la soglia all'interno della finestra di previsione.
Prima di iniziare
-
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 di monitoraggio (
roles/monitoring.editor
) nel tuo progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.Potresti anche riuscire a 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.
Assicurati di conoscere i concetti generali dei criteri di avviso. Per informazioni su questi argomenti, consulta la panoramica degli avvisi.
Configura i canali di notifica che vuoi utilizzare per ricevere le notifiche. Per motivi di ridondanza, ti consigliamo di creare diversi tipi di canali di notifica. Per saperne di più, consulta la pagina Creare e gestire i canali di notifica.
Crea criterio di avviso
Per creare un criterio di avviso che invii una notifica in base a una previsione, segui questi passaggi:
-
Nella console Google Cloud, vai alla pagina notifications Avvisi:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.
- Seleziona Crea criterio.
Seleziona le serie temporali da monitorare:
Fai clic su Seleziona una metrica, naviga nei menu per selezionare un tipo di risorsa e un tipo di metrica, quindi 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
filter_list barra dei filtri.
Ad esempio, se inserisci
util
, il menu mostrerà solo le voci che includonoutil
. Le voci vengono mostrate quando superano un test "contiene" senza distinzione tra maiuscole e minuscole.
- Per visualizzare tutti i tipi di metriche, anche quelle senza dati, fai clic su Metrica non elencata nel menu. Attiva. Per impostazione predefinita, i menu mostrano solo i tipi di metriche con dati. Per ulteriori informazioni, consulta
Puoi monitorare qualsiasi metrica integrata o qualsiasi tipo di metrica definita dall'utente con un tipo di valore double o int64, ovvero una metrica di vincolo e non una metrica per un'istanza VM Amazon.
Se selezioni un tipo di metrica che comporta il monitoraggio di più di 64 serie temporali, il monitoraggio genera previsioni per le 64 serie temporali i cui valori sono più vicini alla soglia o che violano già la soglia. Per le altre serie temporali, i relativi valori vengono confrontati con la soglia.
- Per trovare un tipo di metrica specifico, utilizza la
filter_list barra dei filtri.
Ad esempio, se inserisci
(Facoltativo) Per monitorare un sottoinsieme delle serie temporali che corrispondono alle tipologie di metriche e risorse selezionate nel passaggio precedente, fai clic su Aggiungi filtro. Nella finestra di dialogo del filtro, seleziona l'etichetta in base alla quale applicare il filtro, un comparatore e poi il valore del filtro. Ad esempio, il filtro
zone =~ ^us.*.a$
utilizza un'espressione regolare per trovare tutti i dati delle serie temporali il cui nome della zona inizia conus
e termina cona
. Per ulteriori informazioni, consulta Filtrare la serie temporale selezionata.(Facoltativo) Per modificare il modo in cui i punti di una serie temporale sono allineati, imposta i campi Finestra temporale continua e Funzione finestra temporale continua nella sezione Trasforma i dati.
Se stai monitorando una metrica basata su log, ti consigliamo di impostare il menu Finestra mobile su almeno 10 minuti.
Questi campi specificano in che modo 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 ulteriori informazioni, consulta Allineamento: regolarizzazione all'interno della serie.Puoi anche monitorare la velocità con cui cambia il valore di una metrica utilizzando il campo Funzione finestra mobile per la variazione percentuale. Per ulteriori informazioni, vedi Monitorare una percentuale di variazione.
(Facoltativo) Combina le serie temporali quando 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 calcolare la media dell'utilizzo della CPU per tutte le VM di una zona e poi 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:
- Nella sezione In serie temporali, fai clic su expand_more Espandi.
- Imposta il campo Aggregazione delle serie temporali su un valore diverso da
none
. Ad esempio, per visualizzare il valore medio della serie temporale, selezionamean
. - Assicurati che il campo Raggruppa serie temporali per sia vuoto.
Per combinare o raggruppare le serie temporali in base ai valori delle etichette:
- Nella sezione In serie temporali, fai clic su expand_more Espandi.
- Imposta il campo Aggregazione delle serie temporali su un valore diverso da
none
. - Nel campo Raggruppa serie temporali per, seleziona le etichette per le quali eseguire il raggruppamento.
Ad esempio, se raggruppi in base all'etichetta
zone
e imposti il valoremean
per il campo di aggregazione, il grafico mostra una serie temporale per ogni zona per cui sono disponibili dati. La serie temporale mostrata per una zona specifica è la media di tutte le serie temporali con quella zona.Fai clic su Avanti.
Configura l'attivatore della condizione:
Seleziona Previsione per il tipo di condizione.
(Facoltativo) Aggiorna il menu Trigger degli avvisi, che ha i seguenti valori:
Qualsiasi serie temporale è in violazione: impostazione predefinita. Qualsiasi serie temporale che viola la soglia o che si prevede violi la soglia per l'intera finestra di riesaminazione fa sì che la condizione sia soddisfatta.
Percentuale di serie temporali in violazione: una percentuale di serie temporali deve violare la soglia o essere prevista come violata per l'intera finestra di riesami prima che la condizione sia soddisfatta. Ad esempio, potresti ricevere una notifica quando il 50% delle serie temporali monitorate viola la soglia per l'intera finestra di riesami.
Numero di serie temporali in violazione: un numero specifico di serie temporali deve violare la soglia o deve essere previsto che violi la soglia per l'intera finestra di riesaminazione prima che la condizione sia soddisfatta. Ad esempio, potresti ricevere una notifica quando 32 delle serie temporali monitorate violano la soglia per l'intera finestra di riesami.
Tutte le serie temporali sono in violazione: tutte le serie temporali devono violare la soglia o essere previste come in violazione della soglia per l'intera finestra di riesaminazione prima che la condizione sia soddisfatta.
Per informazioni sugli intervalli utilizzati da Monitoraggio per allineare e misurare i dati delle serie temporali, consulta Periodi di allineamento e finestre di nuovo test.
Seleziona un valore per la finestra di previsione. Il valore selezionato è la durata della previsione nel futuro. Devi impostare questo valore su almeno 1 ora (3600 secondi) e su un massimo di 2,5 giorni (216.000 secondi).
Inserisci quando il valore previsto della metrica selezionata viola la soglia utilizzando i campi Posizione soglia e Valore soglia. Ad esempio, se imposti questi valori su Sopra la soglia e
10
, qualsiasi valore previsto superiore a10
viola la soglia.(Facoltativo) Espandi Opzioni avanzate e imposta il valore della Finestra di ripetizione test. Il valore predefinito di questo campo è Nessun nuovo test.
Ti consigliamo di impostare questo campo su almeno 10 minuti.
Ad esempio, supponiamo di configurare la condizione di previsione in modo che qualsiasi serie temporale possa causare la sua soddisfazione. Supponiamo inoltre che la Finestra di ripetizione test sia impostata su 15 minuti, la Finestra di previsione su 1 ora e che si verifichi una violazione quando il valore della serie temporale è superiore alla Soglia, impostata su 10. La condizione è soddisfatta se si verifica una delle seguenti condizioni:
- Tutti i valori di una serie temporale diventano superiori a 10 e rimangono tali per almeno 15 minuti.
- In un intervallo di 15 minuti, ogni previsione per una serie temporale prevede che il suo valore supererà la soglia di 10 in un determinato momento nell'ora successiva.
(Facoltativo) Per specificare in che modo Monitoring valuta la condizione quando i dati non arrivano più, espandi Opzioni avanzate e utilizza il menu Valutazione dei dati mancanti.
Il menu Valutazione dei dati mancanti è disattivato quando il valore della Finestra di ripetizione del test è Nessuna ripetizione.
Quando i dati mancano per più di 10 minuti, una condizione di previsione smette di fare previsioni e utilizza il valore del campo Valutazione dei dati mancanti per determinare come gestire gli incidenti. Quando le osservazioni vengono riavviate, viene riavviata anche la previsione.
Console Google Cloud
Campo "Valutazione dei dati mancanti"Riepilogo Dettagli Dati mancanti vuoti Gli incidenti aperti rimangono aperti.
Non vengono aperti nuovi incidenti.Per le condizioni soddisfatte, la condizione continua a essere soddisfatta quando i dati non arrivano più. Se un incidente è aperto per questa condizione, l'incidente rimane aperto. Quando un incidente è aperto e non arrivano dati, il timer di chiusura automatica si avvia dopo un ritardo di almeno 15 minuti. Se il timer scade, l'incidente viene chiuso.
Per le condizioni che non sono soddisfatte, la condizione continua a non essere soddisfatta quando i dati non arrivano più.
Punti dati mancanti trattati come valori che violano la condizione del criterio Gli incidenti aperti rimangono aperti.
È possibile aprire nuovi incidenti.Per le condizioni soddisfatte, la condizione continua a essere soddisfatta quando i dati non arrivano più. Se un incidente è aperto per questa condizione, l'incidente rimane aperto. Quando un incidente è aperto e non arrivano dati per la durata della chiusura automatica più 24 ore, l'incidente viene chiuso.
Per le condizioni non soddisfatte, questa impostazione fa sì che la condizione di soglia metrica si comporti come un
metric-absence condition
. Se i dati non arrivano nel periodo di tempo specificato dalla finestra di nuovo test, la condizione viene valutata come soddisfatta. Per un criterio di avviso con una condizione, la condizione soddisfatta comporta l'apertura di un incidente.Punti dati mancanti trattati come valori che non violano la condizione delle norme Gli incidenti aperti vengono chiusi.
Non vengono aperti nuovi incidenti.Per le condizioni soddisfatte, la condizione non è più soddisfatta quando i dati non arrivano più. Se è aperto un incidente per questa condizione, l'incidente è chiuso.
Per le condizioni che non sono soddisfatte, la condizione continua a non essere soddisfatta quando i dati non arrivano più.
Fai clic su Avanti.
(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. Quando vuoi monitorare più tipi di metriche, crea un criterio con più condizioni. Ogni condizione monitora un tipo di metrica. Dopo aver creato le condizioni, specifica come vengono combinate. Per informazioni, consulta Criteri con più condizioni.
Per creare un criterio di avviso con più condizioni, segui questi passaggi:
- Per ogni condizione aggiuntiva, fai clic su Aggiungi condizione di avviso e poi configurala.
- Fai clic su Avanti e configura la modalità di combinazione delle condizioni.
- Fai clic su Avanti per passare alla configurazione delle notifiche e della documentazione.
Configura le notifiche:
Espandi il menu Notifiche e nome e seleziona i canali di notifica. Per motivi di ridondanza, ti consigliamo di aggiungere a un criterio di avviso più tipi di canali di notifica. Per saperne di più, consulta la pagina Gestire i canali di notifica.
(Facoltativo) Per ricevere una notifica quando un incidente è 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.
(Facoltativo) Per modificare il tempo di attesa del monitoraggio prima di chiudere un incidente dopo l'interruzione dell'arrivo dei dati, seleziona un'opzione dal menu Durata della chiusura automatica dell'incidente. Per impostazione predefinita, quando i dati non arrivano più, Monitoring attende sette giorni prima di chiudere un incidente aperto.
Seleziona un'opzione dal menu Livello di gravità delle norme. Gli incidenti e le notifiche mostrano il livello di gravità.
(Facoltativo) Per aggiungere etichette personalizzate al criterio di avviso, nella sezione Etichette utente del criterio:
- Fai clic su Aggiungi etichetta e nel campo Chiave inserisci un nome per l'etichetta. I nomi delle etichette devono iniziare con una lettera minuscola e possono contenere lettere minuscole, numeri, trattini bassi e trattini.
Ad esempio, inserisci
severity
. - Fai clic su Valore e inserisci un valore per l'etichetta. I valori dell'etichetta possono contenere lettere minuscole, numeri, trattini bassi e trattini.
Ad esempio, inserisci
critical
.
Per informazioni su come utilizzare le etichette delle norme per gestire le notifiche, consulta Annotare gli incidenti con le etichette.
- Fai clic su Aggiungi etichetta e nel campo Chiave inserisci un nome per l'etichetta. I nomi delle etichette devono iniziare con una lettera minuscola e possono contenere lettere minuscole, numeri, trattini bassi e trattini.
Ad esempio, inserisci
(Facoltativo) Nella sezione Documentazione, inserisci i contenuti da 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 alle risorse REST delle norme e delle condizioni di avviso. Il modello di documentazione indirizza quindi i lettori a pagine esterne per facilitare il debug.Quando vengono create le notifiche, il monitoraggio sostituisce le variabili della documentazione con i relativi valori. I valori sostituiscono le variabili solo nelle notifiche. Il riquadro di anteprima e altri punti della 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
Formato nella notifica
Per ulteriori informazioni, consulta Annotare le notifiche con la documentazione definita dall'utente e Utilizzare i controlli dei canali.
Fai clic su Nome avviso e inserisci un nome per il criterio di avviso.
Fai clic su Crea criterio.
Filtra la serie temporale selezionata
I filtri assicurano che vengano monitorate solo le serie temporali che soddisfano un insieme di criteri. Quando applichi i filtri, potresti ridurre il numero di righe nel grafico, in modo da 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 un insieme di criteri. Quando applichi i filtri, ci sono meno serie temporali da valutare, il che può migliorare il rendimento dell'avviso.
Un filtro è composto da un'etichetta, un comparatore e un valore. Ad esempio, per trovare corrispondenze con tutte le serie temporali la cui etichetta zone
inizia con "us-central1"
, puoi utilizzare il filtro zone=~"us-central1.*"
, che utilizza un'espressione regolare per eseguire il confronto.
Quando filtri in base all'ID progetto o al contenitore delle risorse,
devi utilizzare l'operatore di uguaglianza (=)
. Quando filtri in base ad altre etichette, puoi utilizzare qualsiasi comparatore 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 poi fai clic su Fine. Nella finestra di dialogo, utilizza il campo Filtro per selezionare il criterio in base al quale applicare il filtro, l'operatore di confronto e poi il valore. Ogni riga della tabella seguente elenca un operatore di confronto, il relativo significato e un esempio:
Operatore | Significato | Esempio |
---|---|---|
= |
Equality | resource.labels.zone = "us-central1-a" |
!= |
Diseguaglianza | resource.labels.zone != "us-central1-a" |
=~ |
Uguaglianza Espressione regolare2 | monitoring.regex.full_match("^us.*") |
!=~ |
Diseguaglianza 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 dei seguenti | resource.labels.zone != one_of("asia-east1-b", "europe-north1-a") |
Risoluzione dei problemi
Questa sezione contiene suggerimenti per la risoluzione dei problemi.
La metrica non è elencata nel menu delle metriche disponibili
Per monitorare una metrica non inclusa nel menu Seleziona una metrica, svolgi uno dei seguenti passaggi:
Per creare un criterio di avviso che monitora una metrica di Google Cloud, espandi il menu Seleziona una metrica e fai clic su
Attivo. Se non è abilitata, 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 questo tipo di metrica generi dati, devi specificare il tipo di metrica utilizzando un filtro di monitoraggio:
- Seleziona ? nell'intestazione della sezione Seleziona metrica e poi seleziona Modalità di filtro diretto nella descrizione comando.
Inserisci un filtro di monitoraggio o un selettore di serie temporali. Per informazioni sulla sintassi, consulta i seguenti documenti:
Monitorare un tasso di variazione
Per monitorare il tasso di variazione di un valore della metrica, imposta il campo Funzione finestra mobile su variazione percentuale. Quando la condizione viene valutata, il monitoraggio calcola il tasso di variazione della metrica in percentuale e poi la confronta con la soglia della condizione. Questa procedura di confronto prevede due passaggi:
- Se la serie temporale ha un tipo di metrica
DELTA
oCUMULATIVE
, viene convertita in una con un tipo di metricaGAUGE
. Per informazioni sulla conversione, consulta Tipi, generi e conversioni. - Il monitoraggio calcola la percentuale di variazione confrontando il valore medio della finestra mobile di 10 minuti più recente con il valore medio della finestra mobile di 10 minuti precedente all'inizio del periodo di allineamento.
Non puoi modificare la finestra mobile di 10 minuti utilizzata per i confronti in un criterio di avviso sulla frequenza di variazione. Tuttavia, devi specificare il periodo di allineamento quando crei la condizione.
Limitazioni
- Puoi configurare la condizione utilizzando l'interfaccia basata su menu della console Google Cloud o utilizzando i filtri di monitoraggio. Non puoi configurare la condizione utilizzando Monitoring Query Language o PromQL.
- Sono supportate tutte le metriche con un tipo di valore double o int64, tranne quelle delle istanze VM Amazon.
Passaggi successivi
- Per creare un criterio che confronti il valore di una serie temporale con una soglia dinamica, devi utilizzare MQL. Per ulteriori informazioni, consulta Creare livelli di gravità dinamici utilizzando MQL.