Panoramica di Cloud Logging

Questo documento fornisce una panoramica di Cloud Logging, un sistema di gestione dei log in tempo reale con supporto per archiviazione, ricerca, analisi e monitoraggio. Cloud Logging raccoglie automaticamente i dati dei log dalle risorse Google Cloud. le tue applicazioni, le risorse on-premise e risorse di altri cloud provider possono inviare dati di log a Cloud Logging. Puoi anche configurare criteri di avviso in modo che Cloud Monitoring quando determinati tipi di eventi vengono riportati nei dati dei log. Per le normative o per motivi di sicurezza, puoi determinare dove sono archiviati i tuoi dati di log.

Raccogliere i log dalle tue applicazioni e dal software di terze parti

Puoi raccogliere i log dalle applicazioni che scrivi mediante l'utilizzo di una libreria client. Tuttavia, non è sempre necessario instrumentare l'applicazione. Ad esempio, per alcuni configurazioni che puoi utilizzare con Ops Agent per inviare i log scritti stdout o stderr al tuo progetto Google Cloud.

Puoi anche raccogliere dati di log dalle applicazioni di terze parti, ad esempio nginx, installando Ops Agent e configurandolo per la scrittura dei log da quell'applicazione al tuo progetto Google Cloud.

Consulta Quale soluzione dovresti usare: agente Logging o libreria client? per trovare informazioni che possano aiutarti a decidere quale approccio si adatta meglio alle tue i tuoi requisiti.

Risolvere i problemi e analizzare i log

Puoi visualizzare e analizzare i dati di log utilizzando la console Google Cloud, con le pagine Esplora log o Analisi dei log. Puoi eseguire query visualizzare i log con entrambe le interfacce; ma utilizzano linguaggi di query diversi hanno capacità diverse.

Quando vuoi risolvere i problemi e analizzare le prestazioni dei tuoi servizi e delle tue applicazioni, ti consigliamo di utilizzare Esplora log. Questa interfaccia è progettata per visualizzare le singole voci di log e trovare quelle correlate. Per Ad esempio, quando una voce di log fa parte gruppo di errori, questa voce viene annotata con un menu di opzioni per accedere a maggiori informazioni sull'errore.

Quando ti interessa eseguire operazioni aggregate sui log, ad esempio per calcolare latenza media per le richieste HTTP inviate a un URL specifico nel tempo, utilizza nell'interfaccia di Analisi dei log. Con questa interfaccia, utilizzi SQL per eseguire query sui dati di log, quindi puoi utilizzare le funzionalità di SQL per aiutarti a comprendere i dati di log.

Se preferisci eseguire query sui dati di log in modo programmatico, puoi utilizzare l'API Cloud Logging o Google Cloud CLI per esportare i dati di log dal tuo progetto Google Cloud.

Per ulteriori informazioni, vedi Panoramica delle query e delle visualizzazioni dei log.

Monitoraggio dei log

Puoi configurare Cloud Logging in modo da ricevere una notifica quando si verificano determinati tipi di eventi nei log. Queste notifiche potrebbero essere inviate quando un determinato schema compare in una voce di log o quando viene rilevata una tendenza nei dati di log. Se vuoi visualizzare le percentuali di errore dei servizi Google Cloud, puoi vedere la dashboard di Cloud Logging, che è preconfigurata.

Ad esempio, se vuoi ricevere una notifica quando un particolare come un evento critico relativo alla sicurezza, puoi per creare un criterio di avviso basato su log. Un criterio di avviso basato su log monitora per un pattern specifico. Se viene rilevato questo modello, il monitoraggio invia una notifica e crea un incidente. I criteri di avviso basati su log sono utili per eventi importanti ma rari, ad esempio:

  • Vuoi ricevere una notifica quando un evento viene visualizzato in un log di controllo. Ad esempio, un utente accede al token di sicurezza di un account di servizio.
  • L'applicazione scrive i messaggi di deployment nei log e tu vuoi quando viene registrata una modifica del deployment.

In alternativa, potresti monitorare le tendenze o il verificarsi di eventi nel tempo. Per queste situazioni, puoi creare una metrica basata su log. Una metrica basata su log può conteggiare il numero di voci di log corrispondenti criterio oppure possono estrarre e organizzare informazioni come i tempi di risposta in istogrammi. Puoi anche configurare criteri di avviso che ti inviano una notifica quando variazioni del rendimento, Ad esempio, il tempo di risposta aumenta a un livello inaccettabile. Le metriche basate su log sono adatte quando vuoi eseguire una 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 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.

Per ulteriori informazioni, vedi Monitora i log.

Archiviazione dei log

Non è necessario configurare la località in cui vengono archiviati i log. Per impostazione predefinita, il progetto Google Cloud archivia automaticamente tutti i log che riceve in un bucket di log Cloud Logging. Ad esempio, se il tuo progetto Google Cloud contiene un'istanza Compute Engine, tutti i log generati da Compute Engine vengono archiviati automaticamente. Tuttavia, se necessario, puoi configurare una serie di aspetti l'archiviazione dei log, ad esempio quali log vengono archiviati, che vengono eliminati e dove sono archiviati i log.

Puoi instradare o inoltrare le voci di log alle seguenti destinazioni. può trovarsi nello stesso progetto Google Cloud o in un altro progetto Google Cloud:

  • Bucket Cloud Logging: fornisce spazio di archiviazione in Cloud Logging. Un bucket di log può archiviare le voci di log ricevute da più progetti Google Cloud. Il bucket di log può trovarsi nello stesso progetto in cui hanno origine le voci di log. in un altro progetto. Per informazioni sulla visualizzazione delle voci di log archiviate nei bucket di log, consulta Panoramica delle query e delle visualizzazioni dei log e visualizzare i log con routing ai bucket Cloud Logging.

    Puoi combinare I dati di Cloud Logging con altri dati eseguendo l'upgrade di un bucket di log da utilizzare Analisi dei log e la creazione di un set di dati collegato, che è di sola lettura set di dati su cui è possibile eseguire query da BigQuery Studio e Looker Studio pagine.

  • Set di dati BigQuery: fornisce l'archiviazione delle voci di log in un set di dati BigQuery scrivibile. Il set di dati BigQuery possono trovarsi nello stesso progetto in cui hanno origine le voci di log o in un progetto. Puoi utilizzare funzionalità di analisi dei big data nelle voci di log archiviate. Per informazioni sulla visualizzazione delle voci di log indirizzate a BigQuery, consulta Visualizza i log indirizzati a BigQuery.

  • Bucket Cloud Storage: fornisce l'archiviazione delle voci di log in Cloud Storage. Il bucket Cloud Storage può trovarsi nello stesso progetto in cui sono presenti le voci di log o in un altro progetto. Le voci di log vengono archiviate come file JSON. Per informazioni sulla visualizzazione delle voci di log indirizzate a Cloud Storage: consulta Visualizzare i log con routing a Cloud Storage.
  • Argomento Pub/Sub: fornisce il supporto per le integrazioni di terze parti. Le voci di log vengono formattate in JSON e quindi instradate a un Pub/Sub per ogni argomento. L'argomento può trovarsi nello stesso progetto in cui si trovano le voci di log o in un altro progetto. Per informazioni sulla visualizzazione delle voci di log indirizzate a vedi Pub/Sub, Visualizza i log con routing a Pub/Sub.

  • Progetto Google Cloud: esegui il routing delle voci di log a un altro progetto Google Cloud. Nel configurazione, i sink nel progetto di destinazione elaborano le voci di log.

Per ulteriori informazioni, incluso il supporto della regionalità dei dati, consulta la panoramica su routing e archiviazione.

Categorie di log

Le categorie di log hanno lo scopo di aiutare a descrivere le informazioni di logging disponibili a te; Le categorie non si escludono a vicenda:

  • I log della piattaforma sono log scritti dai tuoi servizi Google Cloud. Questi log possono aiutarti a eseguire il debug e a risolvere i problemi, nonché a comprendere meglio i servizi Google Cloud che utilizzi.

  • I log dei componenti sono simili ai log della piattaforma, ma vengono generati dai componenti software forniti da Google che vengono eseguiti sui tuoi sistemi. Per Ad esempio, GKE fornisce componenti software che gli utenti sulla propria VM o nel proprio data center. I log vengono generati alle istanze GKE dell'utente e inviato al server progetto Google Cloud. GKE utilizza i log o i relativi metadati per fornire assistenza agli utenti.

  • I log di sicurezza ti aiutano a rispondere alle domande "chi ha fatto cosa, dove e quando":

    • Cloud Audit Logs fornisce informazioni su le attività amministrative e gli accessi dell'accesso a specifiche risorse Google Cloud. L'abilitazione degli audit log favorisce sicurezza, controllo e conformità di Google Cloud per monitorare i dati e i sistemi di Google Cloud vulnerabilità o uso improprio di dati esterni. Per un elenco dei servizi supportati da Google Cloud, vedi Servizi Google con log di controllo.
    • Trasparenza degli accessi fornisce i log delle azioni eseguite dal personale Google quando quando accedono ai contenuti di Google Cloud. Log di Access Transparency può aiutarti a monitorare la conformità alle normative legali e requisiti normativi per la tua organizzazione. Per un elenco dei servizi supportati da Google Cloud, vedi Servizi Google con log di Access Transparency.
  • I log scritti dall'utente sono log scritti da applicazioni e servizi personalizzati. In genere, questi log vengono scritti in Cloud Logging utilizzando uno dei seguenti metodi:

Modello dei dati per i log

Il modello dei dati che Cloud Logging utilizza per organizzare i dati di log determina le dimensioni su cui puoi eseguire query su questi dati. Ad esempio: Poiché un log è una raccolta denominata di singole voci, puoi eseguire query i tuoi dati con il nome del log. Analogamente, poiché ogni log è composto di voci di log formattate come oggetti LogEntry, scrivere query che recuperano solo le voci di log in cui il valore un campo LogEntry corrisponde ad alcuni criteri. Ad esempio, puoi visualizzare solo quelle voci di log il cui campo severity ha il valore ERROR.

Ogni voce del log registra lo stato o descrive un evento specifico, ad esempio la creazione di un'istanza VM, e consiste almeno in quanto segue:

  • Un timestamp che indica quando si è verificato l'evento o quando è stato ricevuto da Cloud Logging.
  • Informazioni sull'origine della voce di log. Questa fonte è denominata risorsa monitorata. Tra gli esempi di risorse monitorate ci sono: Istanze VM di Compute Engine e container di Google Kubernetes Engine. Per un elenco completo dei tipi di risorsa monitorata, consulta Risorse e servizi monitorati.
  • Un payload, chiamato anche messaggio, fornito come testo non strutturato dati o come dati testuali strutturati in formato JSON.
  • Il nome del log a cui appartiene. Il nome di un log include il percorso completo della risorsa a cui appartengono le voci di log, seguito da un identificatore. Di seguito sono riportati alcuni esempi di nomi di log:

    • projects/my-project/logs/stderr
    • projects/my-project/logs/stdout
    • projects/my-project/compute.googleapis.com/activity

Controllo degli accessi

I ruoli Identity and Access Management controllano la possibilità di un'entità di accedere ai log. Puoi concedere ai principali ruoli predefiniti o creare ruoli personalizzati. Per ulteriori informazioni sulle autorizzazioni richieste, consulta Controllo dell'accesso.

Conservazione

Le voci di log vengono memorizzate nei bucket di log per un determinato periodo di tempo e vengono poi eliminato. Per ulteriori informazioni, consulta la panoramica su routing e archiviazione: conservazione.

Prezzi

Cloud Logging non addebita alcun costo per il routing dei log a un destinazione supportata; ma la destinazione potrebbe applicare dei costi. Ad eccezione del bucket di log _Required, Cloud Logging addebita un costo per trasferire i log nei bucket di log. per un'archiviazione più lunga del periodo di conservazione predefinito del bucket di log.

Cloud Logging non addebita alcun costo per la copia dei log, per la definizione degli ambiti di log, o per le query inviate tramite Pagine Esplora log o Analisi dei log.

Per ulteriori informazioni, consulta i seguenti documenti:

Per le strategie per ridurre i costi di Logging, consulta Ottimizzazione dei costi: operazioni cloud.