Questo documento descrive come utilizzare Cloud Monitoring per osservare le tendenze nei log e per ricevere una notifica quando si verificano le condizioni descritte. Per fornire a Cloud Monitoring i dati dei log, Logging supporta le seguenti funzionalità:
Puoi generare metriche personalizzate dalle voci di log. Queste metriche sono chiamate metriche basate su log. Puoi anche creare avvisi basati sulle metriche per ricevere una notifica quando una metrica basata su log soddisfa una condizione. Per ulteriori informazioni, consulta la sezione Visualizzare i dati delle voci di log con le metriche basate su log.
Puoi utilizzare i criteri di avviso per monitorare, quasi in tempo reale, quando un messaggio viene visualizzato nelle voci del log. Questi criteri di avviso vengono chiamati criteri di avviso basati su log. Per ulteriori informazioni, vedi Monitorare le singole voci di log per i messaggi.
Puoi scrivere una query SQL in Analisi dei log e creare un criterio di avviso monitora i risultati della query. Questi criteri di avviso sono chiamati criteri di avviso basati su SQL. Per ulteriori informazioni, consulta Monitorare i risultati delle query SQL.
I criteri di avviso basati su SQL sono in anteprima pubblica.
Il resto del documento descrive le differenze tra questi tre criteri di avviso e fornisce informazioni su autorizzazione, costi limiti.
Visualizzare i dati delle voci di log con le metriche basate su log
Quando vuoi monitorare gli eventi ricorrenti nei log nel tempo, utilizza le metriche basate su log. Le metriche basate su log generano dati numerici dai log. Le metriche basate su log sono adatte per eseguire una qualsiasi delle seguenti operazioni:
- Conta le occorrenze di un messaggio, ad esempio un avviso o un errore, nei log e ricevi una notifica quando il numero di occorrenze supera una soglia.
- Osserva le tendenze nei tuoi dati, ad esempio i valori di latenza nei log, e ricevi una notifica se i valori cambiano in modo inaccettabile.
- Crea grafici per visualizzare i dati numerici estratti dai log.
Poiché le metriche basate su log generano dati numerici dai log, puoi utilizzarle nei criteri di avviso e visualizzarle nei grafici. Per informazioni sulla creazione di criteri di avviso e grafici per le metriche basate su log, consulta Configurare le notifiche per le metriche basate su log.
Cloud Monitoring offre un insieme di metriche predefinite basate su log. tu possa definire il tuo. Per visualizzare un elenco delle metriche basate su log definite dal sistema, fai clic sul seguente pulsante add_circle:
Metriche basate su log definite dall'utente
Puoi creare metriche basate su log per estrarre i dati numerici dal tuo logaritmi. Le metriche definite dall'utente basate su log calcolano i valori di entrambi inclusi ed esclusi.
Per impostazione predefinita, le metriche basate su log definite dall'utente raccolgono i dati da tutti i log ricevuti dal router dei log nel tuo progetto Google Cloud, ma puoi definire Metriche basate su log che raccolgono dati dai log indirizzati a un bucket di log specifico.
- Per informazioni su come definire e utilizzare le metriche basate su log a livello di progetto, consulta Utilizzare le metriche basate su log.
- Per informazioni sulla definizione e l'utilizzo di metriche basate su log a livello di bucket, consulta Metriche basate su log nei bucket di log.
Se definisci le tue metriche basate su log, potresti incorrere in addebiti. Per ulteriori informazioni sui costi associati all'importazione delle metriche, consulta Metriche addebitabili.
Monitorare le singole voci di log per i messaggi
Per ricevere una notifica ogni volta che compare un messaggio specifico in una voce di log, usano criteri di avviso basati su log. I criteri di avviso basati su log sono utili per rilevare eventi correlati alla sicurezza nelle voci dei log, come i seguenti:
- Vuoi ricevere una notifica quando un evento viene visualizzato in un log di controllo. ad esempio un utente umano accede al token di sicurezza di un account di servizio.
- L'applicazione scrive messaggi di deployment nei log e vuoi ricevere una notifica quando viene registrata una modifica di deployment.
I criteri di avviso basati su log sono utili per gli eventi previsti sia rari che importanti. Non vuoi conoscere una tendenza o un modello; vuoi sapere che è successo qualcosa.
Per informazioni sulla creazione di criteri di avviso basati su log, consulta Configurare i criteri di avviso basati su log.
Puoi configurare un criterio di avviso basato su metriche per simulare un criterio di avviso basato su log. Per farlo, definisci una metrica basata su log e utilizzala in un criterio di avviso basato su metriche con una soglia di 1. I criteri di avviso basati su log ti consentono di ottenere questo comportamento senza dover creare una metrica basata su log e configurare un criterio di avviso basato su metriche.
Monitorare i risultati delle query SQL
Puoi configurare criteri di avviso che utilizzano Log Analytics per eseguire query SQL sui dati delle voci di log. Questi tipi di criteri di avviso sono efficaci quando vuoi ricevere una notifica in base a pattern che non possono essere valutati dai criteri di avviso basati su log, ad esempio pattern complessi nelle voci di log o aggregazioni di dati dei log. Per ulteriori informazioni, consulta Monitorare i risultati delle query SQL con un criterio di avviso.
Confronto delle opzioni di avviso
Questa sezione mette a confronto i criteri di avviso basati su metriche basate su log, i criteri di avviso basati su log e i criteri di avviso basati su SQL.
Tabella riepilogativa
La tabella seguente riassume le tecniche di avviso e fornisce Link a ulteriori informazioni:
Criteri di avviso basati su metriche | Criteri di avviso basati su log | Criteri di avviso basati su SQL | Ulteriori informazioni |
---|---|---|---|
In base alle metriche derivate dalle voci di log | In base alle stringhe nelle singole voci di log | In base alle tabelle restituite dalle query SQL sulle voci di log | Metriche basate su log Avvisi basati su log Avvisi basati su SQL |
Utilizzato per informarti delle tendenze nel tempo | Viene utilizzato per inviare una notifica quando un messaggio specifico viene visualizzato in un log | Utilizzato per avvisarti di un pattern in una finestra di voci di log | Metriche basate su log Avvisi basati su log Avvisi basati su SQL |
Calcolata da
|
Corrispondenza solo con i log inclusi | Calcolata dalle voci di log in una finestra mobile | Log disponibili Avvisi basati su SQL |
Utilizza le metriche di tutti i progetti nell'ambito delle metriche del progetto di definizione dell'ambito | Esegui operazioni sui log solo nel progetto di definizione dell'ambito | Opera su tutti i log leggibili in qualsiasi progetto Google Cloud. | Avvisi per più progetti |
L'incidente viene creato quando il valore di una metrica soddisfa una condizione per un periodo specificato | L'incidente viene creato ogni volta che una voce di log specifica corrisponde a un filtro | L'incidente viene creato quando la tabella dei risultati della querysoddisfa una condizione | Incidenti e notifiche |
Creati e gestiti in Monitoring | Elemento creato in Logging; gestite in Monitoring |
Creato in Analisi dei log; gestite in Monitoring | Creazione e gestione dei criteri di avviso Avvisi basati su SQL |
Visualizzato in Monitoring | Visualizzato in Monitoring | Visualizzato in Monitoring | Visualizzazione dei criteri di avviso |
Può utilizzare qualsiasi canale di notifica supportato in Monitoraggio | Può utilizzare qualsiasi canale di notifica supportato in Monitoraggio | Può utilizzare qualsiasi canale di notifica supportato in Monitoring | Canali di notifica |
Log disponibili
Le metriche basate su log definite dall'utente vengono calcolate in base a tutti i log ricevuti dall'API Logging per il progetto Google Cloud, indipendentemente dal fatto che Filtri di inclusione o filtri di esclusione che possono essere applicati a a livello di progetto Google Cloud. Se crei un criterio di avviso basato su un metrica basata su log definita dall'utente, il criterio monitora i dati di tutti i log.
Le metriche definite dal sistema basate su log vengono calcolate solo dai log archiviati in bucket di log progetto Google Cloud. Se un log è stato esplicitamente escluso, non è incluso in queste metriche. Se crei un criterio di avviso basato su una metrica basata su log definita dal sistema, Monitora solo i dati dei log inclusi.
I criteri di avviso basati su log operano solo sui log inclusi provenienti da un progetto. Non puoi utilizzare i criteri di avviso basati sui log per ricevere notifiche sui messaggi nei log esclusi o nei log di altre risorse, come cartelle o organizzazioni.
Sia le metriche basate su log che i criteri di avviso basati su log operano in Nell'ambito del progetto Google Cloud, non nei singoli bucket.
I criteri di avviso basati su SQL eseguono query sulle visualizzazioni dei log nei bucket di log. Per questi bucket dei log deve essere eseguito l'upgrade per l'utilizzo di Log Analytics e poi devono essere collegati a un set di dati BigQuery. Per ulteriori informazioni sui criteri di avviso basati su SQL, consulta Monitora i risultati della query SQL con un criterio di avviso.
Avvisi in più progetti
Puoi monitorare le metriche di più progetti configurando un ambito delle metriche. Un ambito delle metriche elenca tutti i progetti e gli account monitorati. Un progetto di ambito ospita l'ambito delle metriche. Il progetto di definizione dell'ambito archivia i criteri di avviso e altre configurazioni che crei per l'ambito delle metriche. Il progetto di definizione dell'ambito per l'ambito delle metriche è il progetto selezionato dal selettore di progetti della console Google Cloud.
Criteri di avviso basati su metriche basate su log, ad esempio criteri di avviso basati su log su altre metriche, lavorare su tutti i progetti nell'ambito delle metriche del progetto di definizione dell'ambito.
Criteri di avviso basati su log e criteri di avviso basati su SQL non operano sugli ambiti delle metriche, i log in i progetti non fanno parte dell'ambito delle metriche. Un criterio di avviso basato su log valuta solo i log che hanno origine nel progetto corrente o che vengono instradati al progetto corrente. Un criterio di avviso basato su SQL esegue query su una visualizzazione del log in un bucket di log.
Per ulteriori informazioni sugli ambiti delle metriche, inclusi gli ambiti delle metriche per più progetti, e sui progetti di definizione dell'ambito, consulta quanto segue:
I criteri di avviso basati su SQL possono eseguire query sulle visualizzazioni dei log da qualsiasi bucket di log
in qualsiasi progetto Google Cloud, a condizione che siano state concesse le autorizzazioni read
appropriate
sul set di dati BigQuery collegato.
Incidenti e notifiche
Quando la condizione di un criterio di avviso è soddisfatta, Monitoring apre un incidente e invia notifiche ai canali di notifica di il criterio di avviso. Per visualizzare i dettagli dell'incidente, fai clic su Visualizza incidente. nel messaggio di notifica o passa direttamente alla Incidenti di Monitoring.
Incidenti per i criteri di avviso basati su metriche
I criteri di avviso basati su metriche basate su log creano incidenti e come tutti gli altri criteri di avviso basati su metriche in Monitoraggio, come descritto in Comportamento degli avvisi. Per ulteriori informazioni sulla gestione degli incidenti per i criteri di avviso basati su metriche, consulta Incidenti per i criteri di avviso basati su metriche.
Incidenti per i criteri di avviso basati su log
I criteri di avviso basati su log non sono criteri di avviso basati su metriche. Quando una voce di log soddisfa la condizione di un criterio di avviso basato su log, Monitoring crea incidenti e notifiche come segue:
La prima volta che Cloud Logging scrive una voce di log corrispondente alla query di avviso in un bucket dei log, viene creato un incidente e viene inviata una notifica. Se viene scritta un’altra voce di log corrispondente, viene generato un nuovo incidente creato solo se l'incidente precedente è stato chiuso. Tuttavia, l'eliminazione di un incidente chiuso potrebbe richiedere fino a tre minuti. Quando viene ricevuta una voce di log corrispondente nei tre minuti successivi alla chiusura di un incidente, il sistema potrebbe riaprirlo anziché crearne uno nuovo.
Quando crei un criterio di avviso basato su log, puoi specificare il tempo minimo tra le notifiche. Ad esempio, seleziona 10 minuti come intervallo di tempo tra una notifica e l'altra. Se la condizione del criterio di avviso basato su log viene soddisfatta due volte entro questo periodo, riceverai una sola notifica.
La frequenza massima di notifiche per i criteri di avviso basati su log è 1 notifica ogni 5 minuti per ogni criterio di avviso basato su log. Tuttavia, se la query del criterio di avviso basato su log estrae i valori delle etichette, ogni combinazione di valori estratti rappresenta la propria sequenza temporale di notifica. Ad esempio, supponiamo che un modello il criterio di avviso estrae i valori di un'etichetta. Supponiamo che l'etichetta possa avere due e i relativi valori. Con questa configurazione, potresti ricevere due notifiche, una per ogni valore di etichetta, nello stesso 5 minuti.
Esiste un limite di 20 notifiche al giorno per ogni criterio di avviso basato su log. Se raggiungi questo limite, la notifica include un messaggio che ti informa che hai raggiunto il limite per la giornata.
Gli incidenti vengono chiusi automaticamente dopo 7 giorni, a meno che non configuri un periodo più breve o non li chiudi manualmente.
Per saperne di più sulla gestione degli incidenti per i criteri di avviso basati su log, consulta Gestire gli incidenti per i criteri di avviso basati su log.
Incidenti per i criteri di avviso basati su SQL
Per i criteri di avviso basati su SQL, Cloud Monitoring crea un incidente la prima volta che della query SQL soddisfa la condizione specificata nel criterio. Ogni criterio di avviso ha un solo incidente aperto. Mentre l'incidente è aperto, Se la condizione viene soddisfatta di nuovo, Monitoring non crea ulteriori incidenti o inviare notifiche aggiuntive. Il monitoraggio chiude gli incidenti basati su SQL dopo sette giorni, a meno che non configuri un periodo di chiusura degli incidenti più breve o non chiuda l'incidente autonomamente.
Per ulteriori informazioni sulla gestione degli incidenti per i criteri di avviso basati su SQL, consulta Gestire gli incidenti per i criteri di avviso basati su SQL.
Creazione e gestione dei criteri di avviso
Puoi creare, modificare ed eliminare i criteri di avviso basati su metriche basate su log in Cloud Monitoring, come qualsiasi altro criterio di avviso basato su metriche. Per saperne di più, consulta Gestione dei criteri.
Puoi creare criteri di avviso basati su log utilizzando Esplora log o l'API Cloud Monitoring. Modifica ed elimina i criteri di avviso basati su log in Monitoring o con l'API Cloud Monitoring. Per ulteriori informazioni, consulta Gestire i criteri di avviso basati su log.
Puoi creare criteri di avviso basati su SQL utilizzando Analisi dei log o l'API Cloud Monitoring. Puoi modificare ed eliminare gli avvisi basati su SQL in Monitoring o tramite utilizzando l'API Cloud Monitoring. Per ulteriori informazioni, vedi Monitora i risultati della query SQL con un criterio di avviso.
Visualizzazione dei criteri di avviso
Nella pagina Norme di Monitoring sono elencate tutte le i criteri di avviso nel tuo progetto Google Cloud. Questo elenco include i criteri che utilizzano metriche basate su log e criteri di avviso basati su log.
-
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 Visualizza tutti i criteri.
I criteri di avviso basati su log vengono visualizzati nell'elenco con il valore Logs
nella colonna
Tipo. Criteri di avviso basati sulle metriche, inclusi quelli basati su log
vengono visualizzate nell'elenco con il valore Metrics
nella colonna Tipo.
I criteri di avviso basati su SQL vengono visualizzati
con il valore SQL
nella colonna Tipi.
Il seguente screenshot mostra un estratto di un elenco di norme:
Canali di notifica
Puoi inviare notifiche da qualsiasi tipo di criterio di avviso a uno dei canali di notifica supportati da Monitoring. Tu devi configurare questi canali prima di poterli utilizzare nei criteri di avviso.
Per saperne di più, consulta la pagina relativa alla gestione dei canali di notifica.
Requisiti di autorizzazione
L'uso delle metriche basate su log o dei criteri di avviso basati su log richiede l'autorizzazione sia per Cloud Logging che per Cloud Monitoring.
Per le metriche basate su log definite dall'utente, consulta Autorizzazioni per le metriche basate su log.
Per i criteri di avviso basati su log, consulta Autorizzazioni per i criteri di avviso basati su log.
Per i criteri di avviso basati su SQL, consulta Autorizzazioni per i criteri di avviso basati su SQL.
Costi e limiti
Se definisci le tue metriche basate su log, si applica quanto segue:
- Esistono limiti relativi al numero e alla struttura delle applicazioni basate su log definite dall'utente metriche di valutazione. Per ulteriori informazioni su questi limiti, consulta la sezione sui limiti per metriche basate su log.
- Potrebbero esserti addebitati costi per le metriche basate su log definite dall'utente. Per ulteriori informazioni sui costi associati all'importazione delle metriche, consulta Metriche addebitabili.
- I criteri di avviso basati su SQL vengono eseguiti in una prenotazione BigQuery nel tuo progetto Google Cloud. Potresti dover pagare degli addebiti per una prenotazione BigQuery. Per ulteriori informazioni sui costi associate alle prenotazioni BigQuery, consulta Prezzi di BigQuery.
Non sono previsti costi associati all'utilizzo di criteri di avviso basati su metriche basate su log.
Si applicano i seguenti limiti di monitoraggio relativi ai criteri di avviso:
Categoria | Valore | Tipo di norma1 |
---|---|---|
Criteri di avviso (somma di metrica e log) per ambito delle metriche 2 | 500 | Metrica, log |
Condizioni per il criterio di avviso basato su metriche | 6 | Metrica |
Condizioni per criterio di avviso basato su SQL (anteprima pubblica) | 1 | SQL |
Periodo di tempo massimo di cui la condizione di assenza metrica valuta3 |
1 giorno | Metrica |
Periodo di tempo massimo valutato da una condizione di soglia metrica3 |
23 ore 30 minuti | Metrica |
Lunghezza massima del filtro utilizzato in una condizione di soglia metrica |
2048 caratteri Unicode | Metrica |
Numero massimo di serie temporali monitorate da una condizione di previsione |
64 | Metrica |
Finestra di previsione minima | 1 ora (3.600 secondi) | Metrica |
Finestra di previsione massima | 2,5 giorni (216.000 secondi) | Metrica |
Canali di notifica per criterio di avviso | 16 | Metrica, Log |
Frequenza massima di notifiche4 | 1 notifica ogni 5 minuti per ogni criterio di avviso basato su log | Log |
Numero massimo di notifiche | 20 notifiche al giorno per ogni criterio di avviso basato su log | Log |
Numero massimo di incidenti aperti contemporaneamente per criterio di avviso |
1000 | Metrica |
Periodo dopo il quale un incidente senza nuovi dati viene chiuso automaticamente |
7 giorni | Metrica |
Durata massima di un incidente se non viene chiuso manualmente | 7 giorni | Log |
Conservazione degli incidenti chiusi | 13 mesi | Non applicabile |
Conservazione degli incidenti aperti | Indeterminata | Non applicabile |
Canali di notifica per ambito delle metriche | 4000 | Non applicabile |
Numero massimo di criteri di avviso per posticipazione | 16 | Metrica, log |
Mantenimento di una posticipazione | 13 mesi | Non applicabile |
2Apigee e Gli Apigee ibridi sono profondamente integrati con Cloud Monitoring. Il limite di avvisi per tutti i livelli di abbonamento Apigee (Standard, Enterprise ed Enterprise Plus) è lo stesso di Cloud Monitoring: 500 per ambito delle metriche.
3Il periodo di tempo massimo valutato da una condizione è la somma dei il periodo di allineamento e i valori della finestra di durata. Ad esempio, se il periodo di allineamento è impostato su 15 ore e la finestra di durata è impostata su 15 ore, sono necessari 30 ore di dati per valutare la condizione.
4Se la query del criterio di avviso basato su log estrae valori delle etichette, quindi ogni combinazione di valori estratti rappresenta la propria sequenza temporale di notifica. Ad esempio, supponiamo che un modello il criterio di avviso estrae i valori di un'etichetta. Supponiamo che l'etichetta possa avere due valori. Con questa configurazione, potresti ricevere due notifiche, una per ogni valore dell'etichetta, negli stessi 5 minuti.