Le policy di avviso in Cloud Monitoring rilevano i problemi relativi alle applicazioni e all'infrastruttura valutando i risultati delle metriche, dei log o delle query SQL. Quando i dati monitorati soddisfano le condizioni specificate, Monitoring crea un avviso e invia notifiche.
Come funzionano gli avvisi
Il processo di avviso di Cloud Monitoring è composto da tre parti:
Una policy di avviso, che descrive le circostanze in cui vuoi ricevere un avviso e come vuoi ricevere una notifica relativa a un avviso. La criterio di avviso può monitorare i dati delle serie temporali archiviati da Monitoring o i log archiviati da Cloud Logging. Quando i dati soddisfano la condizione criterio di avviso, Monitoring crea un avviso e invia le notifiche.
Ogni avviso è un record del tipo di dati monitorati e di quando sono state soddisfatte le condizioni. Queste informazioni possono aiutarti a risolvere i problemi che hanno causato l'avviso.
Un canale di notifica definisce il modo in cui ricevi le notifiche quando Monitoring crea un avviso. Ad esempio, puoi configurare una criterio di avviso per inviare un'email a
my-support-team@example.come pubblicare un messaggio Slack nel canale#my-support-team. Una criterio di avviso può contenere uno o più canali di notifica.
Le policy di avviso possono valutare tre tipi di dati:
Dati delle serie temporali, chiamati anche dati delle metriche, archiviati da Monitoring. Questi tipi di policy sono chiamati policy di avviso basate su metriche.
Per scoprire come configurare una criterio di avviso basata su metriche, prova la guida rapida per Compute Engine.
Dati delle voci di log archiviati da Cloud Logging. Le policy di avviso che valutano le singole voci di log sono chiamate policy di avviso basate su log. Le policy di avviso basate su log ti inviano una notifica quando nei log viene visualizzato un messaggio specifico. Per saperne di più, consulta Monitora i log.
I risultati di una query SQL eseguita in Observability Analytics sui dati voce di log archiviati in Logging. Le policy di avviso che monitorano i risultati di una query SQL sono chiamate policy di avviso basate su SQL. Per saperne di più, consulta Monitora i risultati delle query SQL con una policy di avviso.
Le policy di avviso basate su SQL sono in anteprima pubblica.
Il processo di avviso ti aiuta a rispondere ai problemi quando le prestazioni di un'applicazione non soddisfano i valori accettabili. Ad esempio, esegui il deployment di un'applicazione web su un'istanza di macchina virtuale (VM) Compute Engine. Anche se prevedi che la latenza della risposta HTTP fluttui, vuoi che il tuo team di assistenza intervenga quando l'applicazione ha una latenza elevata per un periodo di tempo significativo. Puoi creare una criterio di avviso basata su metriche che monitori la metrica di latenza della risposta HTTP dell'applicazione. Se la latenza di risposta è superiore a due secondi per almeno cinque minuti, Monitoring crea un avviso e invia notifiche via email al tuo team di assistenza.
Come creare una criterio di avviso
Esistono diversi modi per creare una criterio di avviso. Ad esempio, puoi utilizzare policy di avviso preconfigurate attivando gli avvisi consigliati dalle integrazioni o da determinate pagine della console Google Cloud . Puoi anche configurare una nuova criterio di avviso utilizzando la consoleGoogle Cloud , l'API Cloud Monitoring, Google Cloud CLI e Terraform.
Utilizza le integrazioni e le policy di avviso consigliate
Monitoring fornisce pacchetti predefiniti per consentirti di creare policy di avviso per i tuoi serviziGoogle Cloud e le integrazioni di terze parti. I pacchetti includono policy di avviso consigliate, dashboard di esempio e metriche chiave per il servizio. Questi pacchetti sono disponibili per serviziGoogle Cloud come Google Kubernetes Engine, Compute Engine e Cloud SQL, nonché per integrazioni di terze parti comuni come MongoDB, Kafka ed Elasticsearch.
Quando installi un pacchetto, puoi attivare le policy di avviso consigliate per il pacchetto. Quando attivi una criterio di avviso consigliata, configuri il relativo canale di notifica e, facoltativamente, modifichi altri valori. Dopo la configurazione, la criterio di avviso inizia immediatamente a monitorare la destinazione, senza che l'utente debba inserire altri input.
Le policy di avviso consigliate sono utili quando hai eseguito il deployment di un nuovo servizio e vuoi ricevere avvisi su metriche importanti. Ad esempio, il pacchetto di integrazione di Cloud SQL include policy di avviso consigliate per istanze non riuscite e transazioni lente:
Per saperne di più, consulta i seguenti documenti:
- Installa le policy di avviso.
- Gestisci le integrazioni.
- Monitoraggio di applicazioni di terze parti.
Crea nuove policy di avviso
Puoi creare policy di avviso per monitorare diversi tipi di dati a seconda delle tue esigenze di avviso. Le sezioni seguenti elencano i diversi tipi di dati che puoi monitorare con le policy di avviso.
Monitora i dati delle serie temporali
| Condition Type | Descrizione | Esempio |
|---|---|---|
| Condizione di soglia della metrica | Le condizioni di soglia della metrica vengono soddisfatte quando i valori di una metrica sono superiori o inferiori a una soglia per una finestra di nuovo test specifica. Per saperne di più, consulta Crea policy di avviso basate su soglie metriche e Crea policy di avviso utilizzando l'API. |
Vuoi una criterio di avviso che invii una notifica quando la latenza di risposta è pari o superiore a 500 ms per cinque controlli di uptime consecutivi nell'arco di 10 minuti. |
| Condizione di assenza di metriche | Le condizioni di assenza di metriche sono soddisfatte quando una serie temporale monitorata non contiene dati per una finestra di riapprovazione specifica. La finestra di ripetizione del test massima è di 24 ore. Per saperne di più, consulta Crea policy di avviso per l'assenza di metriche e Crea policy di avviso utilizzando l'API. |
Vuoi una criterio di avviso che apra un avviso con il tuo team di assistenza quando una risorsa non risponde a nessuna richiesta HTTP nel corso di cinque minuti. |
| Condizione PromQL (Prometheus Query Language) | PromQL è un linguaggio di query funzionale utilizzato per valutare i dati delle serie temporali in tempo reale. Le query PromQL possono utilizzare qualsiasi espressione valida, ad esempio combinazioni di metriche, rapporti e soglie dinamiche basate su una metrica. Per saperne di più, consulta PromQL in Cloud Monitoring e Panoramica degli avvisi PromQL. |
Vuoi utilizzare un'espressione di avviso PromQL trovata in un repository pubblico, vuoi una criterio di avviso basata su più di una metrica, ad esempio un rapporto, o vuoi una criterio di avviso che operi su più di 25 ore di dati. |
| Condizione del valore della metrica prevista | Le condizioni del valore della metrica prevista vengono soddisfatte quando la criterio di avviso prevede che la soglia verrà violata entro la finestra di previsione imminente. La finestra di previsione può variare da 1 ora a 7 giorni. Per saperne di più, consulta Crea policy di avviso per i valori delle metriche previste e Crea policy di avviso utilizzando l'API. |
Vuoi una criterio di avviso che apra un avviso con il tuo team di assistenza quando è probabile che una risorsa raggiunga l'80% di utilizzo dello spazio su disco entro le 24 ore successive. |
Ti consigliamo di filtrare in base alle etichette definite per i tipi di risorse monitorate anziché in base alle etichette definite per i tipi di metriche, se possibile, in particolare se esegui query su metriche con cardinalità elevata. Se hai un'etichetta di risorsa e un'etichetta di metrica che acquisiscono informazioni simili, utilizza l'etichetta di risorsa nelle query.
Ad esempio, se la risorsa monitorata include un'etichetta cluster e la metrica include un'etichetta kubernetes_cluster_name che acquisisce informazioni simili, filtra in base all'etichetta cluster della risorsa.
Le etichette dei metadati delle risorse vengono aggiunte in modo asincrono alle serie temporali e non sono soggette alle stesse aspettative di latenza dei valori delle etichette definite dai tipi di metriche o dai tipi di risorse monitorate. Pertanto, una criterio di avviso che dipende dai valori dei metadati per attivare un'azione può comportarsi in modo irregolare se la compilazione delle etichette dei metadati delle risorse è ritardata.
Monitora i dati voce di log
Per monitorare singole voci di log, utilizza una criterio di avviso basata su log.
Una condizione di una criterio di avviso basata su log viene soddisfatta quando la policy di avviso rileva che una frase di una voce di log corrisponde ai criteri della criterio di avviso. Ad esempio, vuoi una criterio di avviso che apra un avviso con il tuo team di assistenza quando il campo message di una voce di log contiene product_ids=['tier_1_support', 'tier_2_support'].
Per saperne di più, consulta Configura le policy di avviso basate su log nella documentazione di Logging.
Monitora i risultati delle query SQL
Per monitorare i risultati delle query SQL, utilizza una criterio di avviso basata su SQL.
La condizione di una criterio di avviso basata su SQL analizza periodicamente i dati voce di log e crea avvisi quando la tabella dei risultati della query soddisfa determinati criteri. Questo tipo di criterio di avviso è utile quando hai bisogno di una criterio di avviso che monitori le aggregazioni di dati o i pattern complessi in più voci di log. Ad esempio, vuoi ricevere una notifica quando più di 50 voci di log negli ultimi 60 minuti hanno una gravità WARNING.
Per saperne di più, consulta Monitora i risultati delle query SQL con una policy di avviso nella documentazione di Logging.
Componenti delle policy di avviso
Ogni criterio di avviso è composta dai seguenti elementi:
Una condizione che descrive quando una risorsa o un gruppo di risorse si trova in uno stato che richiede una risposta. La condizione include l'origine dati, una soglia statica o dinamica e metodi di aggregazione dei dati come filtri e raggruppamenti. Le condizioni possono monitorare una singola metrica, più metriche o un rapporto di metriche. Puoi anche utilizzare il linguaggio di query Prometheus (PromQL) per includere espressioni complesse come soglie dinamiche e logica condizionale.
Se utilizzi un'integrazione per attivare una criterio di avviso consigliata, la condizione della criterio di avviso viene precompilata.
Un elenco di canali di notifica che descrivono chi avvisare quando è richiesta un'azione. Per saperne di più, consulta la pagina Crea e gestisci canali di notifica.
Documentazione visualizzata nelle notifiche e nelle pagine di avviso. Puoi configurare l'oggetto di una notifica e aggiungere informazioni utili al corpo della notifica. Ad esempio, puoi configurare la notifica in modo che mostri link a playbook interni o a pagine Google Cloud come dashboard personalizzate. Per ulteriori informazioni sulla documentazione, inclusi alcuni esempi, consulta Annota gli avvisi con la documentazione definita dall'utente.
Gestisci policy di avviso e avvisi
Dopo l'attivazione di una criterio di avviso, Monitoring monitora continuamente le condizioni della policy. Non puoi configurare la criterio di avviso in modo che monitori le condizioni solo per determinati periodi di tempo. Se vuoi disattivare la criterio di avviso per un determinato periodo di tempo, crea un posticipo.
Se un avviso è aperto e Monitoring determina che le condizioni della policy basata su metriche non sono più soddisfatte, Monitoring chiude automaticamente l'avviso e invia una notifica relativa alla chiusura.
Passaggi successivi
Per informazioni sulla latenza delle notifiche e su come le scelte dei parametri di una criterio di avviso influiscono sull'invio delle notifiche, consulta Comportamento delle policy di avviso basate su metriche.
Per un elenco di esempi di policy basate su metriche, incluso come utilizzare JSON per scrivere una condizione di soglia della metrica che monitora un rapporto di tipi di metriche, consulta Riepilogo delle policy di avviso di esempio.