Observability Analytics ti consente di eseguire query SQL sui dati di Cloud Trace per scoprire le tendenze delle prestazioni, generare insight aggregati e visualizzare i risultati in grafici e tabelle. Le query vengono eseguite sulla visualizzazione predefinita _AllSpans, che include tutti i dati di traccia archiviati dal progetto, e puoi salvare i risultati in dashboard personalizzate.
Se vuoi esaminare singole tracce, intervalli o attributi di intervallo, utilizza la pagina Esplora tracce. Per saperne di più, consulta Trova ed esplora le tracce.
Informazioni sui set di dati BigQuery collegati
Non è necessario un set di dati BigQuery collegato per eseguire query sui dati di traccia o sui dati di traccia e di log. In questi scenari, puoi utilizzare la pagina Analisi di osservabilità. Per informazioni sull'esecuzione di query sui dati di log, consulta Esegui query e analizza i log con Observability Analytics.
Tuttavia, è necessario un set di dati BigQuery collegato se vuoi:
- Unire i dati di traccia ad altri set di dati BigQuery.
- Eseguire query sui dati di traccia da un altro servizio, ad esempio la pagina BigQuery Studio o Data Studio.
- Esegui query di Observability Analytics sul motore BigQuery utilizzando slot on demand o slot riservati di BigQuery.
- Monitora i risultati delle query SQL con una policy di avviso.
Questo documento non descrive come creare un set di dati BigQuery collegato o come configurare Observability Analytics per eseguire query sul motore BigQuery. Per informazioni su questi argomenti, consulta Crea un set di dati BigQuery collegato ed Esegui query di traccia sul motore BigQuery.
Prima di iniziare
- Accedi al tuo account Google Cloud . Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti senza costi per l'esecuzione, il test e il deployment dei workload.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Observability API, if it is not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Observability API, if it is not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
Per ottenere le autorizzazioni necessarie per caricare la pagina Observability Analytics, scrivere, eseguire e salvare query private sui dati di traccia, chiedi all'amministratore di concederti i seguenti ruoli IAM:
- Observability View Accessor (
roles/observability.viewAccessor) sulle visualizzazioni di osservabilità su cui vuoi eseguire query. Questo ruolo supporta le condizioni IAM, che consentono di limitare la concessione a una visualizzazione specifica. Se non associ una condizione alla concessione del ruolo, l'entità può accedere a tutte le visualizzazioni di osservabilità. - Observability Analytics User (
roles/observability.analyticsUser) sul tuo progetto. Questo ruolo contiene le autorizzazioni necessarie per salvare ed eseguire query private ed eseguire query condivise.
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
- Observability View Accessor (
Visualizza lo schema
Lo schema definisce il modo in cui vengono archiviati i dati, inclusi i campi e i relativi tipi di dati. Queste informazioni sono importanti perché lo schema determina i campi su cui eseguire query 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 della latenza e se è archiviato come numero intero come 100 o come stringa come "100". Se i dati sulla latenza sono archiviati come stringa, la query deve eseguire il cast del valore in un valore numerico prima di calcolare una media.
Per identificare lo schema:
-
Nella console Google Cloud , vai alla pagina manage_search Observability Analytics:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.
Nel menu Visualizzazioni, vai alla sezione
Tracce e poi seleziona _Trace.Spans._AllSpans.Il riquadro Schema viene aggiornato. Observability 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 more_vert Opzioni e seleziona Visualizza informazioni e descrizione.
Per scoprire di più sullo schema, consulta Schema di archiviazione per i dati di traccia.
Se non vedi una visualizzazione denominata
_Trace.Spans._AllSpans, significa che il tuo progettoGoogle Cloud non contiene un bucket di osservabilità denominato_Trace. Per informazioni su come risolvere questo errore, consulta Inizializzazione dello spazio di archiviazione delle tracce non riuscita.
Esegui query sui dati di traccia
In questa sezione vengono descritti gli approcci che puoi utilizzare per eseguire query sui dati di traccia:
- 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, consulta Esempi di query SQL.
- Crea una query effettuando selezioni dai menu, quindi eseguila. Observability Analytics converte le tue selezioni in una query SQL, che puoi visualizzare e modificare.
Carica, modifica ed esegui la query definita dal sistema
-
Nella console Google Cloud , vai alla pagina manage_search Observability Analytics:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.
Nel menu Visualizzazioni, vai alla sezione
Tracce e poi seleziona _Trace.Spans._AllSpans.Se non vedi una visualizzazione denominata
_Trace.Spans._AllSpans, significa che il tuo progettoGoogle Cloud non contiene un bucket di osservabilità denominato_Trace. Per informazioni su come risolvere questo errore, consulta Inizializzazione dello spazio di archiviazione delle tracce non riuscita.Esegui una delle seguenti operazioni:
Per caricare una query definita dal sistema che si basa su Query Builder, che ti consente di definire la query con le selezioni dei menu, assicurati che nel riquadro Query sia visualizzato Query Builder. Se viene visualizzato un editor SQL, fai clic su tune Builder.
Per caricare una query definita dal sistema che estrae i valori JSON, assicurati che nel riquadro Query sia visualizzato l'editor SQL. Se in questo riquadro viene visualizzato Query Builder, fai clic su code SQL.
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à Query Builder, ma vuoi visualizzare la query SQL, fai clic su code SQL.
(Facoltativo) Modifica la query.
Per eseguire la query, vai alla barra degli strumenti e seleziona Esegui query.
Observability Analytics presenta i risultati della query in una tabella. Tuttavia, puoi creare un grafico e salvare la tabella o il grafico in una dashboard personalizzata. Per saperne di più, consulta Grafici dei risultati delle query SQL.
Se la barra degli strumenti mostra Esegui in BigQuery, devi cambiare Observability Analytics per utilizzare il motore di query predefinito. Per apportare questa modifica, nella barra degli strumenti del riquadro Query, fai clic su settings Impostazioni e poi seleziona Analytics (predefinito).
Inserisci ed esegui una query personalizzata
Per inserire una query SQL:
-
Nella console Google Cloud , vai alla pagina manage_search Observability Analytics:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.
Nel riquadro Query, fai clic su code SQL.
Per specificare un intervallo di tempo, ti consigliamo di utilizzare il selettore dell'intervallo di tempo. Se aggiungi una clausola
WHEREche specifica il campotimestamp, questo valore sostituisce l'impostazione nel selettore dell'intervallo di tempo e il selettore viene disattivato.Per esempi, consulta Esempi di query SQL.
L'editor SQL visualizza il nome completo della vista
_Trace.Spans._AllSpans, che ha il seguente formato:FROM `PROJECT_ID.LOCATION._Trace.Spans._AllSpans`
I campi nell'espressione precedente hanno il seguente significato:
- PROJECT_ID: l'identificatore del progetto.
- LOCATION: la posizione del bucket di osservabilità.
Se nel riquadro delle query viene visualizzato un messaggio di errore che fa riferimento all'istruzione
FROM, la vista non è stata trovata. Per informazioni su come risolvere questo errore, consulta Messaggio di errore che indica che una vista non esiste.
Per eseguire la query, vai alla barra degli strumenti e seleziona Esegui query.
Observability Analytics presenta i risultati della query in una tabella. Tuttavia, puoi creare un grafico e salvare la tabella o il grafico in una dashboard personalizzata. Per saperne di più, consulta Grafici dei risultati delle query SQL.
Se la barra degli strumenti mostra Esegui in BigQuery, devi cambiare Observability Analytics per utilizzare il motore di query predefinito. Per apportare questa modifica, nella barra degli strumenti del riquadro Query, fai clic su settings Impostazioni e poi seleziona Analytics (predefinito).
Crea, modifica ed esegui una query
L'interfaccia di Query Builder ti consente di creare una query effettuando selezioni dai menu. Observability Analytics converte le tue selezioni in una query SQL, che puoi visualizzare e modificare. Ad esempio, puoi iniziare utilizzando l'interfaccia di Query Builder e poi passare all'editor SQL per perfezionare la query.
Observability Analytics può sempre convertire le selezioni dei 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, segui questi passaggi:
-
Nella console Google Cloud , vai alla pagina manage_search Observability Analytics:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.
Se nel riquadro Query viene visualizzato un editor SQL, seleziona tune Builder, che apre il riquadro Query Builder.
Utilizza il menu Origine per selezionare la vista su cui vuoi eseguire la query. Le tue selezioni vengono mappate alla clausola
FROMnella query SQL.(Facoltativo) Utilizza i seguenti menu per limitare o formattare la tabella dei risultati:
Cerca in tutti i campi: cerca le stringhe corrispondenti. Le tue selezioni vengono mappate alla clausola
WHEREnella query SQL.Colonne: seleziona le colonne visualizzate nella tabella dei risultati. Le tue selezioni vengono mappate alle clausole
SELECTnella query SQL.Quando selezioni un nome di campo in questo menu, si apre una finestra di dialogo. In questa finestra di dialogo, puoi:
Utilizza il menu per aggregare o raggruppare i dati.
Per evitare errori di sintassi, qualsiasi aggregazione e raggruppamento applicati a una colonna vengono applicati automaticamente anche alle altre colonne. Per un esempio di come aggregare e raggruppare le voci, consulta Raggruppa e aggrega i dati utilizzando Query Builder.
Consente di trasmettere un valore di qualsiasi tipo in un altro tipo di dati specificato. Per saperne di più, consulta la documentazione relativa a
CAST.Estrai una sottostringa di valori utilizzando le espressioni regolari. Per saperne di più, consulta la documentazione relativa a
REGEXP_EXTRACT.
Filtri: aggiungi filtri se 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 tue selezioni vengono mappate alla clausola
WHEREnella query SQL.Ordina per: imposta le colonne in base alle quali ordinare e se l'ordinamento è crescente o decrescente. Le tue selezioni vengono mappate alla clausola
ORDER BYnella query SQL.Limite: imposta il numero massimo di righe nella tabella dei risultati. Le tue selezioni vengono mappate alla clausola
LIMITnella query SQL.
Per eseguire la query, vai alla barra degli strumenti e seleziona Esegui query.
Observability Analytics presenta i risultati della query in una tabella. Tuttavia, puoi creare un grafico e salvare la tabella o il grafico in una dashboard personalizzata. Per saperne di più, consulta Grafici dei risultati delle query SQL.
Se la barra degli strumenti mostra Esegui in BigQuery, devi cambiare Observability Analytics per utilizzare il motore di query predefinito. Per apportare questa modifica, nella barra degli strumenti del riquadro Query, fai clic su settings Impostazioni e poi seleziona Analytics (predefinito).
Esempio: raggruppa e aggrega i dati utilizzando Query Builder
Quando selezioni una colonna in Query Builder, ogni campo include un menu in cui puoi aggiungere raggruppamento e aggregazione. Il raggruppamento ti consente di organizzare i dati in gruppi in base al valore di una o più colonne, mentre l'aggregazione ti consente di eseguire calcoli su questi gruppi per restituire un singolo valore.
Ogni campo selezionato nell'elemento Colonne ha un menu associato con le seguenti opzioni:
- Nessuna: non raggruppare o aggregare in base a questo campo.
- Aggrega: raggruppa i campi elencati nell'elemento Colonne, tranne quando il campo ha una selezione Aggrega. Per questi campi, calcola il valore eseguendo un'operazione su tutte le voci di ogni raggruppamento. L'operazione potrebbe essere il calcolo della media di un campo o un'azione come il conteggio del numero di voci in ogni raggruppamento.
- Raggruppa per: raggruppa le voci in base a tutti i campi elencati nell'elemento Colonne.
Questo esempio mostra come utilizzare Query Builder per raggruppare gli intervalli in base a ora di inizio, nome e tipo di intervallo, quindi calcolare la durata media in nanosecondi per ogni gruppo:
- Nel menu Colonne, seleziona i campi
start_time,name,kindeduration_nano. - Per troncare l'ora di inizio all'ora, espandi il menu nella colonna
start_timee seleziona Raggruppa per. Assicurati che il menu della granularità sia impostato su Ora. Fai clic su Applica.
Quando selezioni Raggruppa per per una colonna, il sistema raggruppa le voci in base a tutte le colonne. In questo esempio, le voci sono raggruppate in base al valore troncato di
start_time, al nome dello span, al tipo di span e al valore della durata.Tuttavia, l'obiettivo di questo esempio è raggruppare le voci in base al tempo troncato, al nome dello span e al tipo di span, quindi calcolare la durata media per ogni gruppo. Nel passaggio successivo, modificherai il raggruppamento e aggiungerai un'aggregazione.
Espandi il menu nel campo
duration_nano, seleziona Aggrega e poi imposta il campo Aggregazione su Media.Quando esegui la query, ogni riga corrisponde a un gruppo, composto da un tempo troncato, un nome di intervallo e un tipo di intervallo. La voce finale di ogni riga è la durata media di tutte le voci di quel gruppo.
Il risultato di questa query è simile al seguente:
+-----------------------------------+----------------+----------+-----------------------+ | Row | hour_timestamp | span_name | kind | average_duration_nano | | | TIMESTAMP | STRING | INTEGER | FLOAT | +-----+-----------------------------+-----------+---------------+-----------------------+ | 1 | 2025-10-09 13:00:00.000 EDT | http.receive | 3 | 122138.22813990474 | 2 | 2025-10-09 13:00:00.000 EDT | query.request | 1 | 6740819304.390297 | 3 | 2025-10-09 13:00:00.000 EDT | client.handler | 2 | 6739339098.409376La query può includere più aggregazioni. Ad esempio, per aggiungere una colonna che conteggia il numero di voci in ogni gruppo, segui questi passaggi:
- Nell'elemento Colonne, fai clic su Aggiungi colonna.
- Seleziona Tutti (*).
- Nella finestra di dialogo, seleziona Aggrega, seleziona Conteggio per Aggregazione, quindi seleziona Applica.
Con questa modifica, il raggruppamento rimane invariato. Le voci sono raggruppate per ora di inizio troncata, nome intervallo e tipo di intervallo. Tuttavia, per ogni gruppo, la query calcola la durata media e il numero di voci.
La query SQL corrispondente per l'esempio precedente è la seguente:
WITH
scope_query AS (
SELECT
*
FROM
`PROJECT_ID.us._Trace.Spans._AllSpans` )
SELECT
-- Report the truncated start time, span name, span kind, average duration and number
-- of entries for each group.
TIMESTAMP_TRUNC( start_time, HOUR ) AS hour_start_time,
name AS span_name,
kind,
AVG( duration_nano ) AS average_duration_nano,
COUNT( * ) AS count_all
FROM
scope_query
GROUP BY
TIMESTAMP_TRUNC( start_time, HOUR ),
name,
kind
LIMIT
100
Passaggi successivi
- Panoramica dello spazio di archiviazione di Trace
- Salva e condividi una query SQL
- Crea grafici dei risultati delle query SQL
- Esempi di query SQL
- Crea un set di dati BigQuery collegato