Esegui query e analizza i log con Log Analytics

Questo documento descrive come eseguire query e analizzare i dati dei log archiviati nei bucket di log di cui è stato eseguito l'upgrade per l'utilizzo di Analisi dei log. Puoi eseguire query sui log in questi bucket utilizzando SQL, che ti consente di filtrare e aggregare i log. Per visualizzare i risultati della query, puoi utilizzare il formato tabulare o visualizzare i dati con i grafici. Queste tabelle e questi grafici possono essere salvati nelle dashboard personalizzate.

Puoi eseguire query su una visualizzazione dei log in un bucket di log o su una visualizzazione di analisi. Quando esegui una query su una visualizzazione dei log, lo schema corrisponde a quello della struttura di dati LogEntry. Poiché lo schema è determinato dal creator di una vista di analisi, un caso d'uso per le viste di analisi è trasformare i dati di log dal formato LogEntry in un formato più adatto alle tue esigenze.

Puoi utilizzare Esplora log per visualizzare le voci di log archiviate nei bucket di log nel progetto, indipendentemente dal fatto che sia stato eseguito o meno l'upgrade del bucket di log per l'utilizzo di Analisi dei log.

Log Analytics non deduplica le voci dei log, il che potrebbe influire sul modo in cui scrivi le query. Inoltre, esistono alcune limitazioni per l'utilizzo di Log Analytics. Per ulteriori informazioni su questi argomenti, consulta i seguenti documenti:

Informazioni sui set di dati collegati

Log Analytics supporta la creazione di set di dati BigQuery collegati, che consentono a BigQuery di avere accesso in lettura ai dati sottostanti. Se scegli di creare un set di dati collegato, puoi:

Questo documento non descrive come creare un set di dati collegato o come configurare Log Analytics per eseguire query sugli slot riservati. Se ti interessano questi argomenti, consulta Eseguire una query su un set di dati collegato in BigQuery.

Prima di iniziare

Questa sezione descrive i passaggi da completare prima di poter utilizzare Log Analytics.

Configura i bucket di log

Assicurati che sia stato eseguito l'upgrade dei bucket di log per utilizzare Analisi dei log:

  1. Nella console Google Cloud, vai alla pagina Archiviazione dei log:

    Vai ad Archiviazione dei log

    Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.

  2. Per ogni bucket di log con una vista log per cui vuoi eseguire una query, assicurati che la colonna Log Analytics disponibile mostri Aperto. Se viene visualizzato Esegui l'upgrade, fai clic su Esegui l'upgrade e completa la finestra di dialogo.

Configura i ruoli e le autorizzazioni IAM

Questa sezione descrive i ruoli o le autorizzazioni IAM obbligatori per utilizzare Log Analytics:

  • Per ottenere le autorizzazioni necessarie per utilizzare Log Analytics ed eseguire query sulle visualizzazioni log, chiedi all'amministratore di concederti i seguenti ruoli IAM nel progetto:

    • Per eseguire query sui bucket di log _Required e _Default: Visualizzatore log (roles/logging.viewer)
    • Per eseguire query su tutte le visualizzazioni dei log in un progetto: Logs View Accessor (roles/logging.viewAccessor)

    Puoi limitare un'entità a una visualizzazione di log specifica aggiungendo una condizione IAM alla concessione del ruolo Accesso alla visualizzazione dei log effettuata a livello di progetto oppure aggiungendo un'associazione IAM al file di criteri della visualizzazione di log. Per ulteriori informazioni, consulta Controllare l'accesso a una visualizzazione dei log.

    Si tratta delle stesse autorizzazioni necessarie per visualizzare le voci di log nella pagina Esplora log. Per informazioni sui ruoli aggiuntivi necessari per eseguire query sulle visualizzazioni dei bucket definiti dall'utente o per eseguire query sulla visualizzazione _AllLogs del bucket di log _Default, consulta Ruoli di Cloud Logging.

  • Per ottenere le autorizzazioni necessarie per eseguire query sulle visualizzazioni di analisi, chiedi all'amministratore di concederti il ruolo IAM Utente di analisi dell'osservabilità (roles/observability.analyticsUser) nel progetto.

Esegui una query su una visualizzazione dei log o su una visualizzazione di analisi

Quando risolvi un problema, potresti voler contare le voci di log con un campo che corrisponde a un pattern o calcolare la latenza media per la richiesta HTTP. Puoi eseguire queste azioni eseguendo una query SQL in una visualizzazione dei log.

Per eseguire una query SQL in una visualizzazione dei log:

  1. Nella console Google Cloud, vai alla pagina Analisi dei log:

    Vai ad Analisi dei log

    Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.

  2. Se vuoi caricare la query predefinita:

    1. Nel menu Visualizzazioni, vai alla sezione Log di o Visualizzazioni di analisi di e seleziona la visualizzazione per cui vuoi eseguire una query.

      Per trovare una visualizzazione, puoi utilizzare la barra Filtro o scorrere l'elenco:

      • Le visualizzazioni di log sono elencate in BUCKET_ID.LOG_VIEW_ID, dove questi campi fanno riferimento agli ID del bucket di log e della visualizzazione di log.

      • Le viste di analisi sono elencate in base a LOCATION.ANALYTICS_VIEW_ID, dove questi campi fanno riferimento alla posizione e all'ID di una vista di analisi. Le visualizzazioni di Analytics sono in Anteprima pubblica.

    2. Nella barra degli strumenti Schema, fai clic su Query.

      Il riquadro Query viene aggiornato con una query SQL che esegue query sulla vista di analisi selezionata.

  3. Se vuoi inserire una query:

    • Per specificare un intervallo di tempo, ti consigliamo di utilizzare il selettore intervallo-di-tempo. Se puoi aggiungere una clausola WHERE che specifica il campo timestamp, questo valore sostituisce l'impostazione nel selettore dell'intervallo di tempo e il selettore viene disattivato.

    • Per esempi, consulta Esempi di query.

    • Per eseguire una query su una visualizzazione log, la clausola FROM per la query deve avere il seguente formato:

      FROM `PROJECT_ID.LOCATION.BUCKET_ID.LOG_VIEW_ID`
      
    • Per eseguire query su una visualizzazione di analisi, la clausola FROM per la query deve avere il seguente formato:

      FROM `analytics_view.PROJECT_ID.LOCATION.ANALYTICS_VIEW_ID`
      

    Di seguito viene descritto il significato dei campi nelle espressioni precedenti:

    • PROJECT_ID: l'identificatore del progetto.
    • LOCATION: la posizione della visualizzazione dei log o della visualizzazione Dati.
    • BUCKET_ID: il nome o l'ID del bucket dei log.
    • LOG_VIEW_ID: l'identificatore della visualizzazione dei log, che è limitato a 100 caratteri e può includere solo lettere, cifre, trattini bassi e trattini.
    • ANALYTICS_VIEW_ID: l'ID della visualizzazione di Dati, che è limitato a 100 caratteri e può includere solo lettere, cifre, trattini bassi e trattini.
  4. Nella barra degli strumenti, assicurati che sia visualizzato un pulsante denominato Esegui query.

    Se nella barra degli strumenti viene visualizzato Esegui in BigQuery, fai clic su Impostazioni e seleziona Log Analytics (predefinito).

  5. Esegui la query.

    La query viene eseguita e il risultato viene visualizzato nella scheda Risultati.

    Puoi utilizzare le opzioni della barra degli strumenti per formattare la query, cancellarla e aprire la documentazione di riferimento di BigQuery SQL.

  6. Esplora i risultati della query. Puoi visualizzare i risultati come tabella o come grafico. I grafici possono essere salvati in una dashboard personalizzata. Per ulteriori informazioni, consulta Graficare i risultati delle query SQL.

Visualizza lo schema

Lo schema ne definisce la struttura e il tipo di dati per ogni campo. Queste informazioni sono importanti per te perché determinano come costruisci le query. Ad esempio, supponiamo di voler calcolare la latenza media delle richieste HTTP. Devi sapere come accedere al campo della latenza e se è memorizzato come numero intero come 100 o come stringa come "100". Quando i dati sulla latenza sono archiviati come stringa, la query deve eseguire il casting del valore in un valore numerico prima di calcolare una media.

Quando il tipo di dati di una colonna è JSON, lo schema non elenca i campi disponibili per la colonna. Ad esempio, una voce di log può avere un campo con il nome json_payload. Quando viene eseguito l'upgrade di un bucket di log per l'utilizzo di Analisi dei log, il campo viene mappato a una colonna con un tipo di dati JSON. Lo schema non indica i campi secondari della colonna. In altre parole, non puoi utilizzare lo schema per determinare se json_payload.url è un riferimento valido.

Per identificare lo schema:

  1. Nella console Google Cloud, vai alla pagina Analisi dei log:

    Vai ad Analisi dei log

    Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.

  2. Nel riquadro Visualizzazioni, individua la visualizzazione dei log o di analisi e poi selezionala.

    Viene visualizzato lo schema. Per le visualizzazioni dei log, lo schema è fisso e corrisponde alla struttura di dati LogEntry. Per le visualizzazioni di analisi, puoi modificare la query SQL per cambiare lo schema.

Passaggi successivi