Esegui query e analizza i log con Log Analytics

Questo documento descrive come eseguire query e analizzare i dati dei log utilizzando Log Analytics, che fornisce un'interfaccia di query basata su SQL. Utilizzando SQL, puoi eseguire attività come contare le voci di log con un campo che corrisponde a un pattern. Log Analytics fornisce un editor SQL e un sistema basato su menu per creare query. Per visualizzare i risultati della query, puoi utilizzare il formato tabellare oppure visualizzare i dati come grafico. Puoi salvare i grafici nelle dashboard personalizzate.

Puoi eseguire query su una visualizzazione log in un bucket di log o su una visualizzazione Analytics. Quando esegui una query su una visualizzazione log, lo schema corrisponde a quello della struttura dei dati LogEntry. Poiché il creatore di una vista di Analytics determina lo schema, un caso d'uso delle viste di Analytics è la trasformazione dei dati di log dal formato LogEntry in un formato più adatto alle tue esigenze.

Log Analytics non deduplica le voci di log, il che potrebbe influire sul modo in cui scrivi le query. Inoltre, esistono alcune limitazioni per l'utilizzo di Log Analytics. Per saperne di più 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 accedere 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 che devi completare prima di poter utilizzare Log Analytics.

Configura i bucket di log

Assicurati che i bucket di log siano stati sottoposti all'upgrade 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 visualizzazione dei log che vuoi interrogare, assicurati che la colonna Log Analytics disponibile mostri Apri. Se viene visualizzato il pulsante Esegui l'upgrade, fai clic su Esegui l'upgrade e completa la finestra di dialogo.

Configura ruoli e autorizzazioni IAM

Questa sezione descrive i ruoli o le autorizzazioni IAM necessari 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 sul 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 Accessore visualizzazione log effettuata a livello di progetto oppure aggiungendo un binding IAM al file dei criteri della visualizzazione di log. Per ulteriori informazioni, vedi Controllare l'accesso a una visualizzazione log.

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

  • Per ottenere le autorizzazioni necessarie per eseguire query sulle visualizzazioni di analisi, chiedi all'amministratore di concederti il ruolo IAM Observability Analytics User (roles/observability.analyticsUser) sul progetto.

Esegui query sui dati di log

Questa sezione descrive gli approcci che puoi utilizzare per eseguire query sui dati di log:

  • Carica una query definita dal sistema, modificala ed eseguila.
  • Inserisci ed esegui una query personalizzata. Ad esempio, puoi incollare una query che hai o scriverne una. Le query personalizzate possono includere join, query nidificate e altre istruzioni SQL complesse. Per esempi, vedi Query SQL di esempio.
  • Crea una query effettuando selezioni di menu e poi eseguila. Analisi dei log converte le selezioni in una query SQL, che puoi visualizzare e modificare.

Caricare, modificare ed eseguire la query definita dal sistema

  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 menu Visualizzazioni, vai alla sezione Log o Visualizzazioni Analytics e seleziona la visualizzazione per cui vuoi eseguire la query.

    Per trovare la visualizzazione da interrogare, utilizza la barra Filtra o scorri l'elenco:

    • Le visualizzazioni di log sono elencate per BUCKET_ID.LOG_VIEW_ID, dove questi campi si riferiscono agli ID del bucket di log e della visualizzazione di log.

    • Le viste Analytics sono elencate per LOCATION.ANALYTICS_VIEW_ID, dove questi campi si riferiscono alla posizione e all'ID di una vista Analytics. Le visualizzazioni di Analytics sono in Anteprima pubblica.

  3. Esegui una di queste operazioni:

    • Per caricare una query definita dal sistema che si basa su Query Builder, che ti consente di definire la query con le selezioni del menu, assicurati che nel riquadro Query sia visualizzato Query Builder. Se viene visualizzato un editor SQL, fai clic su  Generatore.

    • Per caricare una query definita dal sistema che estrae i valori JSON, assicurati che il riquadro Query mostri l'editor SQL. Se in questo riquadro viene visualizzato Generatore di query, fai clic su  SQL.

  4. Nel riquadro Schema, seleziona Query e poi fai clic su Sovrascrivi.

    Il riquadro Query mostra una query definita dal sistema. Se hai selezionato la modalità Generatore di query, ma vuoi visualizzare la query SQL, fai clic su  SQL.

  5. (Facoltativo) Modifica la query.

  6. Per eseguire la query, vai alla barra degli strumenti e seleziona Esegui query.

    Log Analytics presenta i risultati della query in una tabella. Tuttavia, puoi creare un grafico e puoi anche salvare la tabella o il grafico in una dashboard personalizzata. Per ulteriori informazioni, vedi Graficare i risultati della query SQL.

    Se la barra degli strumenti mostra Esegui in BigQuery, devi passare a Log Analytics per utilizzare il motore di query predefinito. Per apportare questa modifica, nella barra degli strumenti del riquadro Query, fai clic su Impostazioni e poi seleziona Analytics (impostazione predefinita).

Inserire ed eseguire una query personalizzata

Per inserire una query SQL:

  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 Query, fai clic su  SQL.

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

    • Per esempi, vedi Query SQL di esempio.

    • Puoi eseguire query sulle visualizzazioni dei log o sulle visualizzazioni di Analytics. Utilizza il formato seguente per la clausola FROM:

      • Visualizzazioni log:

        FROM `PROJECT_ID.LOCATION.BUCKET_ID.LOG_VIEW_ID`
        
      • Viste Analytics:

        FROM `analytics_view.PROJECT_ID.LOCATION.ANALYTICS_VIEW_ID`
        

      I campi nelle espressioni precedenti hanno il seguente significato:

      • PROJECT_ID: l'identificatore del progetto.
      • LOCATION: la posizione della visualizzazione log o della visualizzazione Analytics.
      • 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 Analytics, che è limitato a 100 caratteri e può includere solo lettere, cifre, trattini bassi e trattini.

    Se nel riquadro della query viene visualizzato un messaggio di errore che fa riferimento all'istruzione FROM, significa che la visualizzazione non è stata trovata. Per informazioni su come risolvere questo errore, consulta la sezione La clausola FROMError deve contenere esattamente una visualizzazione del log.

  3. Per eseguire la query, vai alla barra degli strumenti e seleziona Esegui query.

    Log Analytics presenta i risultati della query in una tabella. Tuttavia, puoi creare un grafico e puoi anche salvare la tabella o il grafico in una dashboard personalizzata. Per ulteriori informazioni, vedi Graficare i risultati della query SQL.

    Se la barra degli strumenti mostra Esegui in BigQuery, devi passare a Log Analytics per utilizzare il motore di query predefinito. Per apportare questa modifica, nella barra degli strumenti del riquadro Query, fai clic su Impostazioni e poi seleziona Analytics (impostazione predefinita).

Creare, modificare ed eseguire una query

L'interfaccia di Query Builder ti consente di creare una query effettuando selezioni dai menu. Analisi dei log converte le tue selezioni in una query SQL, che puoi visualizzare e modificare. Ad esempio, potresti iniziare a utilizzare l'interfaccia di Query Builder e poi passare all'editor SQL per perfezionare la query.

Analisi dei log può sempre convertire le selezioni di menu dall'interfaccia di Query Builder in una query SQL. Tuttavia, non tutte le query SQL possono essere rappresentate dall'interfaccia di Query Builder. Ad esempio, le query con join non possono essere rappresentate da questa interfaccia.

Per creare una query:

  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 nel riquadro Query viene visualizzato un editor SQL, seleziona Builder, che apre il riquadro Query Builder.

  3. Utilizza i menu Origine e Campi per selezionare la visualizzazione e le colonne da visualizzare nella tabella dei risultati. Le selezioni vengono mappate alle clausole FROM e SELECT nella query SQL.

  4. (Facoltativo) Utilizza i seguenti menu per limitare o formattare la tabella dei risultati:

    • Cerca in tutti i campi: cerca le stringhe corrispondenti. Le selezioni vengono mappate alla clausola WHERE nella query SQL.

    • Filtri: aggiungi filtri quando vuoi limitare la query agli intervalli che contengono un attributo o un ID intervallo specifico. Il menu elenca tutte le opzioni di filtro disponibili. Le selezioni vengono mappate alla clausola WHERE nella query SQL.

    • Ordina per: imposta le colonne in base alle quali ordinare i dati e se l'ordinamento è crescente o decrescente. Le tue selezioni vengono mappate alla clausola ORDER BY nella query SQL.

    • Limite: imposta il numero massimo di righe nella tabella dei risultati. Le tue selezioni vengono mappate alla clausola LIMIT nella query SQL.

  5. Per eseguire la query, vai alla barra degli strumenti e seleziona Esegui query.

    Log Analytics presenta i risultati della query in una tabella. Tuttavia, puoi creare un grafico e puoi anche salvare la tabella o il grafico in una dashboard personalizzata. Per ulteriori informazioni, vedi Graficare i risultati della query SQL.

    Se la barra degli strumenti mostra Esegui in BigQuery, devi passare a Log Analytics per utilizzare il motore di query predefinito. Per apportare questa modifica, nella barra degli strumenti del riquadro Query, fai clic su Impostazioni e poi seleziona Analytics (impostazione predefinita).

Visualizzare lo schema

Lo schema definisce la modalità di archiviazione dei dati, inclusi i campi e i relativi tipi di dati. Queste informazioni sono importanti per te perché lo schema determina i campi che interroghi e se devi eseguire il cast dei campi in tipi di dati diversi. Ad esempio, per scrivere una query che calcola la latenza media delle richieste HTTP, devi sapere come accedere al campo latenza e se è memorizzato come numero intero, ad esempio 100, o come stringa, ad esempio "100". Se i dati di latenza sono memorizzati come stringa, la query deve eseguire il cast del valore in un valore numerico prima di calcolare una media.

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 menu Visualizzazioni, vai alla sezione Log o Visualizzazioni Analytics e seleziona la visualizzazione per cui vuoi eseguire la query.

    Il riquadro Schema viene aggiornato. Log Analytics deduce automaticamente i campi di una colonna quando il tipo di dati è JSON. Per visualizzare la frequenza con cui questi campi dedotti vengono visualizzati nei dati, fai clic su Opzioni e seleziona Visualizza informazioni e descrizione.

    Per le visualizzazioni dei log, lo schema è fisso e corrisponde a LogEntry. Per le visualizzazioni di analisi, puoi modificare la query SQL per cambiare lo schema.

Passaggi successivi