Questo documento descrive come utilizzare Cloud Monitoring per osservare le tendenze nei dati di log e per ricevere notifiche quando si verificano le condizioni specificate. Per fornire a Cloud Monitoring i dati dei tuoi 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 policy di avviso basate su metriche per ricevere una notifica quando una metrica basata su log soddisfa una condizione. Per maggiori informazioni, consulta Visualizzare i dati voce 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 di log. Queste policy di avviso sono chiamate policy di avviso basate su log. Per saperne di più, consulta Monitorare le singole voci di log per i messaggi.
Puoi scrivere una query SQL in Observability Analytics e creare una criterio di avviso che monitori i risultati della query. Queste policy di avviso sono chiamate policy di avviso basate su SQL. Per saperne di più, consulta Monitora i risultati delle query SQL.
Le policy di avviso basate su SQL sono in anteprima pubblica.
Il resto di questo documento descrive le differenze tra queste tre policy di avviso e fornisce informazioni su autorizzazione, costi e limiti.
Visualizzare i dati voce di log con le metriche basate su log
Quando vuoi monitorare gli eventi ricorrenti nei dati di log nel tempo, utilizza le metriche basate sui log. Le metriche basate su log generano dati numerici dai dati di log e sono adatte quando vuoi eseguire una delle seguenti operazioni:
- Conteggia le occorrenze di un messaggio, ad esempio un avviso o un errore, nei dati di 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 dati di log, e ricevi una notifica quando i valori cambiano in modo inaccettabile.
- Crea grafici per visualizzare i dati numerici estratti.
Poiché le metriche basate su log generano dati numerici dai dati di log, puoi utilizzarle nelle policy di avviso e visualizzarli nei grafici. Per informazioni sulla creazione di policy di avviso e grafici per le metriche basate su log, consulta Configura le notifiche per le metriche basate su log.
Cloud Monitoring fornisce un insieme di metriche basate su log predefinite e puoi definirne di tue. 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 dati numerici dai dati di log. Le metriche basate su log definite dall'utente calcolano i valori dalle voci di log incluse ed escluse.
Per impostazione predefinita, le metriche basate su log definite dall'utente raccolgono dati da tutte le voci di log ricevute dal router dei log nel tuo progetto Google Cloud , ma puoi definire metriche basate su log che raccolgono dati dalle voci di log instradate a un bucket di log specifico.
- Per informazioni sulla definizione e sull'utilizzo delle metriche basate su log a livello di progetto, consulta Utilizzo delle metriche basate su log.
- Per informazioni sulla definizione e sull'utilizzo delle 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 saperne di più sui costi associati all'importazione delle metriche, consulta Prezzi di Google Cloud Observability.
Monitora le singole voci di log per i messaggi
Quando vuoi ricevere una notifica ogni volta che si verifica un messaggio specifico in una voce di log, utilizza i criteri di avviso basati su log. Le policy di avviso basate su log sono utili per rilevare eventi relativi alla sicurezza nelle voci di log, come i seguenti:
- Vuoi ricevere una notifica quando un evento viene visualizzato in un log di controllo; ad esempio, un utente umano accede alla chiave di sicurezza di un account di servizio.
- La tua applicazione scrive i messaggi di deployment nei log e vuoi ricevere una notifica quando viene registrata una modifica al deployment.
Le policy di avviso basate sui log sono utili per gli eventi che prevedi siano rari e importanti. Non vuoi conoscere una tendenza o un pattern, ma vuoi sapere che si è verificato un evento.
Le policy di avviso basate su log sono definite in un progetto e analizzano una voce di log quando si verificano le seguenti condizioni:
- La fatturazione è abilitata.
- La voce di log proviene da un progetto.
I sink nel progetto in cui ha origine la voce di log o in un progetto a cui viene instradata la voce di log, instradano la voce di log a un bucket di log.
Ad esempio, supponiamo che una voce di log abbia origine nel progetto
A. Se un sink di log nel progettoAinstrada la voce di log a un bucket di log, le policy di avviso basate su log definite nel progettoAanalizzano la voce di log.Come secondo esempio, supponiamo che una voce di log abbia origine nel progetto
Xe che un sink di log nel progettoXindirizzi la voce di log al progettoY. Se un sink nel progettoYinstrada la voce di log a un bucket di log, le policy di avviso basate su log definite nel progettoXe nel progettoYanalizzano la voce di log.
Non puoi utilizzare le policy di avviso basate su log per monitorare le voci di log provenienti da cartelle, account di fatturazione o organizzazioni o per monitorare le voci di log non archiviate nei bucket di log. Se crei sink aggregati, questi potrebbero intercettare una voce di log e impedirne il routing da parte dei sink nel progetto in cui ha origine la voce di log.
Per informazioni sulla creazione di policy di avviso basate su log, consulta Configura le policy di avviso basate su log.
Monitora i risultati delle query SQL
Puoi configurare policy di avviso che utilizzano Observability Analytics per eseguire query SQL sui dati voce di log. Questi tipi di policy di avviso sono efficaci quando vuoi ricevere notifiche in base a pattern che non possono essere valutati dalle policy di avviso basate sui log, come pattern complessi nelle voci di log o aggregazioni di dati di log. Per maggiori informazioni, consulta Monitorare i risultati delle query SQL con una policy di avviso.
Confronto delle opzioni di avviso
Questa sezione mette a confronto le policy di avviso basate su metriche basate su log, le policy di avviso basate su log e le policy di avviso basate su SQL.
Tabella riepilogativa
La tabella seguente riassume le tecniche di avviso e fornisce link a ulteriori informazioni:
| Policy di avviso basate su metriche | Policy di avviso basate su log | Policy di avviso basate su SQL | Ulteriori informazioni |
|---|---|---|---|
| Basate su 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 |
| Utilizzata per informarti sulle tendenze nel tempo | Utilizzato per inviarti una notifica quando in un log viene visualizzato un messaggio specifico | 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 |
Calcolato da
|
Trova corrispondenze solo con le voci di log incluse | Calcolato dalle voci di log in una finestra scorrevole | Voci di log disponibili Avvisi basati su SQL |
| Operare sulle metriche di tutti i progetti nell'ambito delle metriche del progetto di definizione dell'ambito | Agisci sulle voci di log che soddisfano le seguenti condizioni:
|
Operare sulle visualizzazioni dei log accessibili tramite i set di dati BigQuery collegati. Questi set di dati possono trovarsi in qualsiasi progetto. | Ambito delle metriche Set di dati BigQuery collegati |
| L'avviso viene creato quando il valore di una metrica soddisfa una condizione per un periodo specificato | L'avviso viene creato ogni volta che una voce di log specifica corrisponde a un filtro | L'avviso viene creato quando la tabella dei risultati della query soddisfa una condizione | Avvisi e notifiche |
| Create e gestite in Monitoraggio | Creato in Logging; gestito in Monitoring |
Creato in Observability Analytics; gestito in Monitoring | Creazione e gestione delle policy di avviso Avvisi basati su SQL |
| Visualizzato in Monitoring | Visualizzato in Monitoring | Visualizzato in Monitoring | Visualizzazione delle policy di avviso |
| Può utilizzare qualsiasi canale di notifica supportato in Monitoring | Può utilizzare qualsiasi canale di notifica supportato in Monitoring | Può utilizzare qualsiasi canale di notifica supportato in Monitoring | Canali di notifica |
Voci di log disponibili
Questa sezione descrive quali voci di log possono essere conteggiate da una metrica basata su log e quali possono essere monitorate da una criterio di avviso basata su log.
Voci di log che possono essere conteggiate dalle metriche basate su log
Le metriche basate su log definite dall'utente vengono calcolate da tutte le voci di log ricevute dall'API Logging per il progetto Google Cloud , indipendentemente dai filtri di inclusione o dai filtri di esclusione che potrebbero essere applicati al progetto Google Cloud . Se crei un criterio di avviso basato su una metrica basata su log definita dall'utente, il criterio monitora i dati di tutte le voci di log.
Le metriche basate su log definite dal sistema vengono calcolate solo dalle voci di log archiviate nei bucket di log nel progettoGoogle Cloud . Se un log è stato escluso esplicitamente, non viene incluso in queste metriche. Se crei unacriterio di avvisoo basata su una metrica basata su log definita dal sistema, la policy monitora i dati solo delle voci di log incluse.
Voci di log che possono essere monitorate dalle policy di avviso basate su log
Le policy di avviso basate su log sono definite in un progetto ed esaminano una voce di log quando si verificano le seguenti condizioni:
- La fatturazione è abilitata.
- La voce di log proviene da un progetto.
I sink nel progetto in cui ha origine la voce di log o in un progetto a cui viene instradata la voce di log, instradano la voce di log a un bucket di log.
Ad esempio, supponiamo che una voce di log abbia origine nel progetto
A. Se un sink di log nel progettoAinstrada la voce di log a un bucket di log, le policy di avviso basate su log definite nel progettoAanalizzano la voce di log.Come secondo esempio, supponiamo che una voce di log abbia origine nel progetto
Xe che un sink di log nel progettoXindirizzi la voce di log al progettoY. Se un sink nel progettoYinstrada la voce di log a un bucket di log, le policy di avviso basate su log definite nel progettoXe nel progettoYanalizzano la voce di log.
Non puoi utilizzare criteri di avviso basati su log per monitorare le voci di log che hanno origine in cartelle, account di fatturazione o organizzazioni oppure per monitorare le voci di log che non sono archiviate nei bucket di log. Se crei sink aggregati, questi potrebbero intercettare una voce di log e impedirne il routing da parte dei sink nel progetto in cui ha origine la voce di log.
Voci di log che le policy di avviso basate su SQL possono monitorare
Le policy di avviso basate su SQL non hanno accesso ai singoli log. Queste policy eseguono invece query sui set di dati BigQuery collegati e poi monitorano il risultato della query. I set di dati BigQuery collegati forniscono l'accesso ai dati nelle visualizzazioni dei log.
Ogni visualizzazione di log si trova in un bucket di log. Puoi creare il set di dati BigQuery collegato per quel bucket di log dopo aver eseguito l'upgrade del bucket di log per utilizzare Observability Analytics.
Per saperne di più sulle policy di avviso basate su SQL, consulta Monitora i risultati delle query SQL con una policy di avviso.
Monitora le metriche 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 che monitora. Un progetto di definizione dell'ambito ospita l'ambito delle metriche. Il progetto di definizione dell'ambito archivia le policy di avviso e altre configurazioni che crei per l'ambito delle metriche. Il progetto di definizione dell'ambito per un ambito delle metriche è il progetto selezionato dal selettore di progetti della console Google Cloud .
Le policy di avviso basate su metriche basate su log, come quelle basate su altre metriche, funzionano in tutti i progetti nell'ambito delle metriche del progetto di definizione dell'ambito.
L'ambito delle metriche non è pertinente per i criteri di avviso basati sulle voci di log, come i criteri basati su log e SQL.
Per ulteriori informazioni sugli ambiti delle metriche, inclusi gli ambiti delle metriche multiprogetto, e sui progetti di definizione dell'ambito, consulta quanto segue:
Avvisi e notifiche
Quando la condizione di una criterio di avviso viene soddisfatta, Monitoring apre un avviso e invia notifiche ai canali di notifica della criterio di avviso. Per visualizzare i dettagli dell'avviso, fai clic su Visualizza avviso nel messaggio di notifica o vai direttamente alla pagina Avvisi in Monitoring.
Avvisi per le policy di avviso basate su metriche
Le policy di avviso basate su metriche basate su log creano avvisi e notifiche come tutte le altre policy di avviso basate su metriche in Monitoring, come descritto in Comportamento degli avvisi. Per saperne di più sulla gestione degli avvisi per le policy di avviso basate su metriche, consulta Avvisi per le policy di avviso basate su metriche.
Avvisi per le policy di avviso basate su log
I contenuti di questa sezione si applicano solo alle policy di avviso basate sui log. Queste policy monitorano le singole voci di log. Non si applica alle policy di avviso che monitorano i dati delle metriche, incluse le metriche basate su log, o i risultati delle query SQL.
Quando Cloud Logging scrive la voce di log in un bucket di log, ogni criterio di avviso basata sui log analizza la voce di log. Se una voce di log corrisponde al filtro della criterio di avviso, Cloud Logging estrae le etichette e inoltra i dati a Cloud Monitoring.
Una volta ricevuti i dati da Cloud Logging, Cloud Monitoring utilizza le seguenti regole per determinare le azioni da intraprendere:
Se non sono presenti avvisi aperti per la criterio di avviso, Monitoring apre un nuovo avviso e invia una notifica.
Quando sono disponibili etichette estratte, le informazioni identificative dell'avviso includono queste etichette.
Se esiste un avviso chiuso i cui valori delle etichette estratte corrispondono ai valori delle etichette estratte per la voce di log corrente, Monitoring riapre l'avviso chiuso o ne apre uno nuovo. Monitoring determina l'azione da intraprendere in base all'eliminazione o meno dell'avviso chiuso, che potrebbe richiedere fino a tre minuti.
Se è presente un avviso aperto i cui valori delle etichette corrispondono ai valori delle etichette estratte per la voce di log corrente, il sistema invia un'altra notifica o non esegue alcuna azione. Il comportamento del sistema dipende dal fatto che la criterio di avviso abbia superato o meno un limite di avvisi o notifiche.
Per ogni criterio di avviso basato su log, si applicano i seguenti limiti:
Un massimo di 20 avvisi al giorno per criterio di avviso basata su log.
Quando questo limite viene raggiunto, la notifica include un'affermazione simile alla seguente: "È stato raggiunto il numero massimo di 20 avvisi giornalieri. Gli avvisi per questa norma riprenderanno entro le prossime 24 ore."
Il limite giornaliero viene reimpostato in un momento casuale. Questo intervallo di ripristino non è configurabile dall'utente.
Un massimo di 2 nuovi avvisi al minuto percriterio di avvisoo basata su log.
Quando una criterio di avviso basata su log estrae i valori delle etichette, questo limite potrebbe impedirti di ricevere le notifiche previste. Ad esempio, supponiamo che una criterio di avviso basata su log estragga un'etichetta con cinque valori possibili. In qualsiasi intervallo di un minuto, il sistema può aprire al massimo 2 avvisi.
L'intervallo minimo tra le notifiche ripetute per un avviso aperto è di 5 minuti. Puoi configurare questo intervallo quando crei o modifichi la criterio di avviso.
Gli avvisi si chiudono automaticamente quando il periodo di tempo specificato dalla durata di chiusura automatica trascorre, senza una ripetizione della causa dell' avviso. Per impostazione predefinita, la durata della chiusura automatica è di 7 giorni. A causa di eventi ricorrenti, l'avviso può rimanere aperto più a lungo della durata della chiusura automatica.
Per saperne di più sulla gestione degli avvisi per le policy di avviso basate su log, consulta Gestire gli avvisi per le policy di avviso basate su log.
Avvisi per le policy di avviso basate su SQL
Per le policy di avviso basate su SQL, Cloud Monitoring crea un avviso la prima volta che il risultato della query SQL soddisfa la condizione specificata nella policy. Ogni criterio di avvisoo ha un solo avviso aperto. Mentre l'avviso è aperto, se la condizione viene soddisfatta di nuovo, Monitoring non crea ulteriori avvisi né invia notifiche aggiuntive. Monitoring chiude gli avvisi basati su SQL dopo sette giorni, a meno che non configuri un periodo di chiusura degli avvisi più breve o non chiuda l'avviso autonomamente.
Per saperne di più sulla gestione degli avvisi per le policy di avviso basate su SQL, consulta Gestire gli avvisi per le policy di avviso basate su SQL.
Creazione e gestione delle policy di avviso
Puoi creare, modificare ed eliminare 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 delle policy.
Puoi creare policy di avviso basate su log utilizzando Esplora log o l'API Cloud Monitoring. Puoi modificare ed eliminare le policy di avviso basate su log in Monitoring o con l'API Cloud Monitoring. Per saperne di più, consulta Gestione delle policy di avviso basate sui log.
Puoi creare policy di avviso basate su SQL utilizzando Observability Analytics o l'API Cloud Monitoring. Puoi modificare ed eliminare le policy di avviso basate su SQL in Monitoring o utilizzando l'API Cloud Monitoring. Per saperne di più, consulta Monitora i risultati delle query SQL con una policy di avviso.
Visualizzazione delle policy di avviso
La pagina Policy in Monitoring elenca tutte le policy di avviso nel tuo progetto Google Cloud . Questo elenco include policy che utilizzano metriche basate su log e policy di avviso basate su log.
-
Nella Google Cloud console, vai alla pagina notifications Avvisi:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.
- Seleziona Visualizza tutte le norme.
Le policy di avviso basate su log vengono visualizzate nell'elenco con il valore Logs nella colonna Tipo. Le policy di avviso basate su metriche, incluse quelle basate su log, vengono visualizzate nell'elenco con il valore Metrics nella colonna Tipo.
Le policy di avviso basate su SQL vengono visualizzate nell'elenco con il valore SQL nella colonna Tipi.
Lo screenshot seguente mostra un estratto di un elenco di policy:
Canali di notifica
Puoi inviare notifiche da qualsiasi tipo di criterio di avviso a qualsiasi canale di notifica supportato da Monitoring. Devi configurare questi canali prima di poterli utilizzare nelle policy di avviso.
Per saperne di più, consulta Gestione dei canali di notifica.
Requisiti di autorizzazione
L'utilizzo di metriche basate su log o 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 le policy di avviso basate su log, consulta Autorizzazioni per le policy di avviso basate su log.
Per le policy di avviso basate su SQL, consulta Autorizzazioni per le policy di avviso basate su SQL.
Limiti
Questa sezione elenca i limiti per le metriche basate sui log e per le norme di avviso. I limiti per le policy di avviso dipendono dal tipo di dati monitorati dalle policy.
Limiti per le metriche basate su log
Esistono limiti al numero e alla struttura delle metriche basate su log definite dall'utente. Per saperne di più su questi limiti, consulta Limiti per le metriche basate su log.
Limiti per le policy di avviso
Le prime due colonne della tabella seguente elencano una categoria e un valore limite. La terza colonna elenca i tipi di policy a cui si applica il limite:
- Metrica:si applica alle policy di avviso che monitorano i dati delle metriche, incluse le metriche basate su log.
- LBA: si applica alle policy di avviso che monitorano le voci di log. Queste policy sono chiamate policy di avviso basate su log.
- SQL:si applica alle policy di avviso che monitorano il risultato di una query SQL.
- Tutte:si applica a tutte le norme di avviso.
| Categoria | Valore | Tipo di criterio |
|---|---|---|
| Policy di avviso (somma di metrica e log) per ambito delle metriche 1 | 2000 | Metrica, LBA |
| Condizioni per criterio di avviso basata su metriche | 6 | Metrica |
| Condizioni per policy di avviso basata su SQL (anteprima pubblica) |
1 | SQL |
| Tempo massimo di esecuzione della query per una policy di avviso basata su SQL (anteprima pubblica) |
5 minuti | SQL |
| Periodo di tempo massimo valutato da una condizione di assenza di metriche 2 |
1 giorno | Metrica |
| Periodo di tempo massimo in cui viene valutata una condizione di soglia metrica 2 |
25 ore | Metrica |
| Periodo di tempo massimo in cui viene valutata una condizione PromQL |
2 anni | Metrica |
| Lunghezza massima del filtro utilizzato in una condizione di soglia della metrica |
2048 caratteri Unicode | Metrica |
| Numero massimo di serie temporali monitorate da una condizione di previsione |
64 | Metrica |
| Finestra di previsione minima | 1 ora (3600 secondi) | Metrica |
| Finestra di previsione massima | 2,5 giorni (216.000 secondi) | Metrica |
| Canali di notifica per criterio di avviso | 16 | Tutti |
| Numero massimo di nuovi avvisi per criterio di avviso basata su log |
20 avvisi al giorno | LBA |
| Numero massimo di notifiche3 per criterio di avviso basata su log |
20 notifiche al giorno | LBA |
| Frequenza massima di nuovi avvisi per criterio di avviso basata su log |
2 nuovi avvisi al minuto | LBA |
| Intervallo minimo tra le notifiche per un avviso aperto4 per criterio di avviso basata su log |
5 minuti | LBA |
| Numero massimo di policy di avviso attivate contemporaneamente per progetto |
80.000 | Tutti |
| Numero massimo di avvisi aperti contemporaneamente per criterio di avviso |
1000 | Tutti |
| Periodo dopo il quale un avviso senza nuovi dati viene chiuso automaticamente |
7 giorni | Metrica, SQL |
| Durata massima di un avviso se non viene chiuso manualmente | 7 giorni | LBA |
| Conservazione degli avvisi chiusi | 13 mesi | Non applicabile |
| Conservazione degli avvisi aperti | Indeterminato | Non applicabile |
| Canali di notifica per ambito delle metriche | 4000 | Non applicabile |
| Numero massimo di policy di avviso per posticipo | 16 | Tutti |
| Conservazione di un posticipo | 13 mesi | Non applicabile |
2Il periodo di tempo massimo in cui una condizione viene valutata è la somma dei valori del periodo di allineamento e 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 necessarie 30 ore di dati per valutare la condizione.
3Monitoring genera notifiche per un avviso aperto quando trascorre il tempo minimo tra le notifiche e una voce di log corrisponde alle etichette dell'avviso. Se un criterio di avviso basato su log viene posticipato quando Monitoring genera una notifica, la notifica viene eliminata e non viene inviata ai canali di notifica del criterio. In caso contrario, Monitoring invia la notifica ai canali di notifica della criterio di avviso. Tutte le notifiche generate da Monitoring vengono conteggiate ai fini del limite di 20 notifiche al giorno della criterio di avviso.
4Se la query della criterio di avviso basata su log estrae etichette, ogni combinazione di valori delle etichette estratte rappresenta la propria sequenza temporale di avviso. Pertanto, puoi ricevere più notifiche entro 5 minuti.
Prezzi
Per informazioni sui prezzi di Cloud Logging, consulta la pagina Prezzi di Google Cloud Observability.