Questa pagina fornisce una panoramica concettuale delle metriche basate su log.
Le metriche basate su log possono aiutarti a osservare tendenze e schemi ricorrenti in un volume elevato di voci di log. Queste metriche sono ricavate dalle voci di log che hanno origine nel tuo progetto Google Cloud o che vengono instradate al tuo progetto Google Cloud da un'area di destinazione in un altro progetto. Ad esempio, puoi utilizzare una metrica basata su log per contare il numero di voci di log che contengono un determinato messaggio o per estrarre le informazioni sulla latenza registrate nelle voci di log. Puoi visualizzare le metriche basate su log nei grafici di Cloud Monitoring e i criteri di avviso possono monitorarle.
Se prevedi di creare un criterio di avviso per monitorare una metrica basata su log, assicurati di comprendere le limitazioni di questo approccio. In particolare, consulta Risoluzione dei problemi: nella metrica mancano i dati dei log.
Origini delle metriche basate su log
Puoi utilizzare le metriche definite da Cloud Logging per raccogliere informazioni sull'utilizzo generale e puoi definire la tua metrica basata su log per acquisire informazioni specifiche per la tua applicazione o la tua attività.
Le metriche basate su log possono essere applicate all'interno di un singolo progetto Google Cloud o di un bucket di log. Non puoi creare metriche basate su log per altre risorse Google Cloud, come organizzazioni o account di fatturazione Cloud.
Per informazioni sulle differenze tra le metriche basate su log con ambito di progetto e quelle con ambito di bucket, consulta Metriche basate su log con ambito di bucket.
Metriche definite dal sistema
La registrazione fornisce un insieme di metriche per i valori di utilizzo, ad esempio il numero di voci di log archiviate nei bucket di log del progetto o il numero di byte esportati. Per un elenco completo delle metriche definite dal sistema, consulta Metriche di Google Cloud: registrazione.
Metriche definite dall'utente
Puoi creare metriche basate su log definite dall'utente per monitorare altre metriche importanti per il tuo progetto. Ad esempio, puoi creare una metrica basata su log per conteggiare il numero di voci di log corrispondenti a un determinato filtro.
Per impostazione predefinita, le metriche basate su log definite dall'utente vengono calcolate da tutti i log ricevuti dall'API Logging per il progetto Google Cloud, indipendentemente da eventuali filtri di inclusione o filtri di esclusione che potrebbero essere applicati al progetto Google Cloud.
Puoi anche creare metriche basate su log definite dall'utente per un bucket di log specifico in un progetto Google Cloud. Le metriche basate su log con ambito del bucket vengono calcolate da tutti i log destinati al bucket, indipendentemente dalla loro origine. Per ulteriori informazioni, consulta Metriche basate su log per i bucket di log.
Tipi di dati per le metriche basate su log
Le metriche basate su log possono estrarre i dati dai log per creare metriche dei seguenti tipi:
- Contatore: queste metriche conteggiano il numero di voci di log corrispondenti a un filtro specificato in un periodo specifico. Utilizza i contatori quando vuoi tenere traccia del numero di volte in cui un valore o una stringa viene visualizzato nei log.
- Distribuzione: queste metriche conteggiano anche i valori, ma raccolgono i conteggi in intervalli di valori (bucket dell'istogramma). Utilizza le distribuzioni quando vuoi estrarre valori come le latenze.
- Booleano: queste metriche rilevano se una voce di log corrisponde o meno a un filtro specificato.
Le metriche basate su log definite dall'utente possono essere di tipo contatore o distribuzione. La maggior parte delle metriche basate su log definite dal sistema sono contatori, ma alcune sono di tipo booleano. Le caratteristiche dei contatori e delle distribuzioni sono descritte in modo più dettagliato nelle sezioni successive.
I dati di una metrica basata su log definita dall'utente provengono solo dalle voci di log ricevute dopo la creazione della metrica. Una metrica non viene compilata in modo retroattivo con i dati delle voci di log già presenti in Logging.
Le metriche basate sui log di sistema vengono calcolate solo dai log inclusi. Le metriche basate su log definite dall'utente vengono calcolate sia dai log inclusi che da quelli esclusi.
La registrazione accumula informazioni per una metrica basata su log ogni volta che riceve una voce di log corrispondente. La registrazione scrive un nuovo punto dati nella serie temporale della metrica alla frequenza di 1 punto dati al minuto, rendendoli disponibili per Cloud Monitoring.
Ogni punto dati nella serie temporale di una metrica basata su log rappresenta solo le informazioni aggiuntive (il delta) ricevute dal punto dati precedente.
Le sezioni seguenti descrivono le caratteristiche delle metriche di tipo contatore e di tipo distribuzione.
Metriche dei contatori
Le metriche contatore conteggiano il numero di voci di log corrispondenti a un determinato filtro. Ad esempio, puoi eseguire le seguenti operazioni:
- Conta le voci di log che contengono un determinato messaggio di errore specifico.
Conta il numero di volte in cui ogni utente richiama un'operazione cercando messaggi di log che corrispondono a questo pattern:
... user USERNAME called OPERATION ...
Estraendo USERNAME e OPERATION e utilizzandoli come valori per due etichette, in un secondo momento puoi chiedere "Quante volte
sally
ha chiamato l'operazioneupdate
?". "Quante persone hanno chiamato l'operazioneread
?", "Quante voltegeorge
ha chiamato un'operazione?" e così via.
Per saperne di più, consulta Configurare le metriche dei contatori.
Metriche di distribuzione
Le metriche di distribuzione accumulano dati numerici dalle voci di log corrispondenti a un filtro. Le metriche contengono una serie temporale di oggetti di distribuzione, ciascuno dei quali contiene quanto segue:
- Un conteggio del numero di valori nella distribuzione.
- La media dei valori.
- La somma delle deviazioni al quadrato: Sommai=1..n(xi-media)2
- Un insieme di bucket dell'istogramma con il conteggio dei valori in ogni bucket. Puoi scegliere di utilizzare il layout del bucket predefinito o crearne uno personalizzato.
Un utilizzo comune delle metriche di distribuzione è il monitoraggio delle latenze. Quando viene ricevuta ogni voce di log, un valore di latenza viene estratto da qualche parte nella voce di log e aggiunto alla distribuzione. A intervalli regolari, la distribuzione accumulata viene scritta in Cloud Monitoring.
Per informazioni sulle distribuzioni, incluso il loro formato all'interno di una serie temporale e come vengono visualizzate, consulta Grafici delle metriche di distribuzione.
Per informazioni sulla creazione di metriche di distribuzione basate su log, consulta Configurare le metriche di distribuzione.
Tipi di risorse
Ti consigliamo di specificare un singolo tipo di risorsa per le metriche basate su log. Questa specifica garantisce che i dati delle serie temporali generati per la metrica basata su log corrispondano al modello dei dati previsto da Cloud Monitoring. Inoltre, semplifica il processo di creazione di grafici e criteri di avviso, poiché non vi è alcuna ambiguità in merito ai dati delle serie temporali che vengono tracciati o monitorati.
Prendiamo in considerazione una metrica basata su log con il seguente filtro:
severity>="ERROR"
resource.type="gce_instance"
Cloud Monitoring riconosce che questi dati si riferiscono a un'istanza VM di Compute Engine. Pertanto, quando crei un grafico per un'istanza VM, la metrica basata su log è elencata come opzione nei menu. Quando crei un grafico per un tipo di risorsa diverso, la metrica basata su log non è elencata come opzione.
Se crei una metrica basata su log senza specificare un tipo di risorsa, Monitoring elenca la metrica basata su log come opzione per più tipi di risorse, anche se non conteggi le voci di queste risorse.
Etichette
Le metriche basate su log possono avere etichette, che consentono di raccogliere più serie temporali per la metrica. I valori per le etichette vengono estratti dai campi nelle voci di log corrispondenti. I record di log separano le serie temporali per ogni combinazione di valori delle etichette.
Tutte le metriche basate su log forniscono un'etichetta predefinita log
.
Questa etichetta contiene il valore della parte LOG_ID del
campo logName
nella voce di log, ad esempio
cloudresourcemanager.googleapis.com%2Factivity
.
Le metriche basate sui log di sistema hanno etichette predefinite che non possono essere modificate. Tuttavia, puoi personalizzare le etichette per le metriche definite dall'utente. Ad esempio, puoi utilizzare le etichette nella metrica basata su log per registrare la cartella o l'organizzazione da cui ha avuto origine una voce di log, anche se non è possibile creare metriche basate su log con ambito a livello di bucket per cartelle o organizzazioni. Per ulteriori informazioni, consulta Etichette delle metriche basate su log.
Grafici e criteri di avviso in Cloud Monitoring
Puoi utilizzare le metriche basate su log sia di sistema che definite dall'utente in Cloud Monitoring per creare grafici e criteri di avviso. Per ulteriori informazioni, consulta Elenca e crea grafici delle metriche basate su log e Generare avvisi sulle metriche basate su log.
In Cloud Monitoring, le metriche basate su log utilizzano i seguenti pattern di denominazione:
- Sistema:
logging.googleapis.com/SYSTEM_METRIC_NAME
- Definito dall'utente:
logging.googleapis.com/user/USER_METRIC_NAME
Tieni presente che le metriche basate su log definite dall'utente includono la stringa user
.
Visibilità agli ambiti delle metriche di monitoraggio
Le metriche basate su log vengono importate da Cloud Monitoring e la visibilità degli dati delle metriche per un progetto Google Cloud è determinata da un ambito delle metriche. Un ambito delle metriche è un elenco di progetti monitorati dal progetto che ospita l'ambito delle metriche. Il progetto host è chiamato progetto di definizione.
Per impostazione predefinita, ogni progetto ospita un ambito delle metriche che include solo se stesso, quindi è un progetto di definizione dell'ambito per se stesso. Pertanto, le metriche, incluse quelle basate su log, sono visibili solo al tuo progetto Google Cloud.
Puoi anche creare un ambito delle metriche multi-project per il progetto di definizione dell'ambito. Con un ambito delle metriche multi-progetto, il progetto di definizione dell'ambito può visualizzare le metriche di tutti i progetti nell'ambito delle metriche. Gli elementi visibili ai singoli progetti in un ambito delle metriche multi-progetto sono determinati dall'ambito delle metriche ospitato da ciascuno di questi progetti. Il fatto che due progetti si trovino in un ambito delle metriche multi-progetto non significa che ogni progetto abbia accesso ai dati delle metriche o di configurazione dell'altro progetto.
Un singolo progetto può anche essere visualizzato in più ambiti delle metriche. Le metriche di un progetto di questo tipo sono visibili ai progetti di definizione dell'ambito di ciascuno di questi ambiti delle metriche.
Le metriche, incluse quelle basate su log, sono definite in un progetto specifico. Quando il progetto viene visualizzato in più ambiti delle metriche, le metriche sono visibili a progetti diversi da quello in cui sono definite. Per informazioni sull'interazione tra gli ambiti delle metriche e le metriche basate su log con ambito del bucket, consulta Progetti e ambiti delle metriche.
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:
Prezzi
Tutte le metriche basate su log definite dall'utente sono una classe di metriche personalizzate di Cloud Monitoring e sono addebitabili. Per informazioni sui prezzi, consulta Prezzi di Cloud Logging: metriche basate su log.
Quota
Per informazioni sulle quote e sui limiti associati alle metriche basate su log definite dall'utente, consulta Quote e limiti.
Risoluzione dei problemi
Se riscontri problemi durante l'utilizzo delle metriche basate su log, consulta la sezione Risolvere i problemi relativi alle metriche basate su log.