Questo documento descrive come risolvere i problemi quando utilizzi la pagina Esplora tracce o la pagina Esplora tracce precedente:
- Risolvere i problemi relativi alla pagina Esplora tracce
- Risolvere i problemi relativi alla pagina Esplora tracce precedente
Problemi noti
Esistono due problemi noti con la pagina Esplora tracce:
Gli intervalli scritti nel tuo progetto Google Cloud prima dell'11 gennaio 2025 potrebbero non essere disponibili. Questi intervalli sono disponibili nella pagina Trace Explorer precedente.
Il riquadro dei dettagli dell'evento per gli intervalli scritti nel progetto Google Cloud prima dell'11 gennaio 2025 potrebbe essere visualizzato in modo diverso rispetto agli intervalli scritti dopo questa data.
Risolvere i problemi relativi alla pagina Esplora tracce
Questa sezione descrive come risolvere i problemi durante l'utilizzo della pagina Trace Explorer.
Nessun dato nella pagina Esplora tracce
Stai utilizzando la pagina Trace Explorer e non riesci a visualizzare alcuna traccia nel tuo progetto Google Cloud quando prevedi che siano presenti dati di traccia.
Prova a seguire questi passaggi:
Verifica che l'API Cloud Trace sia abilitata e che i dati vengano scritti nel tuo progetto:
Nella console Google Cloud, vai alla pagina API e servizi abilitati:
Se l'Cloud Trace API è presente nell'elenco, vai al passaggio successivo. In caso contrario, abilita l'API.
Per abilitare l'API, fai clic su Attiva API e servizi, cerca "Cloud Trace API", seleziona l'opzione e poi fai clic su Attiva.
Nella pagina Abilita API e servizi, individua la riga etichettata API Cloud Trace.
Se la colonna etichettata Richieste non elenca informazioni numeriche, significa che non vengono inviati dati di traccia al tuo progetto Google Cloud.
Per risolvere la richiesta, controlla le applicazioni e i proxy per assicurarti che siano configurati per inviare le tracce al progetto corretto.
Se la colonna etichettata Error elenca un valore diverso da zero, si sono verificati errori durante la lettura o la scrittura dei dati di traccia. Per ulteriori informazioni sulla fonte degli errori, seleziona API Cloud Trace, la scheda Metriche e poi il grafico Errori per metodo API:
Se le scritture non vanno a buon fine, concedi all'account di servizio che fornisce le credenziali di autenticazione il ruolo Agente Cloud Trace (
roles/cloudtrace.agent
). Questo ruolo include l'autorizzazionecloudtrace.traces.patch
, che consente alle applicazioni di scrivere dati sugli intervalli in un progetto Google Cloud.Per ulteriori informazioni, consulta Ruoli IAM di Cloud Trace.
Se le letture non vanno a buon fine, assicurati che il tuo ruolo IAM nel progetto Google Cloud includa le autorizzazioni nel ruolo Utente di Cloud Trace (
roles/cloutrace.user
). Per un elenco delle autorizzazioni per questo ruolo, consulta Ruoli IAM di Cloud Trace.
Verifica che la pagina Esplora tracce stia cercando i dati di traccia nel progetto corrente:
-
Nella console Google Cloud, vai alla pagina Esplora tracce.
Puoi trovare questa pagina anche utilizzando la barra di ricerca.
- Nella barra degli strumenti, vai all'elemento Ambito, espandi il menu Perfeziona ambito, seleziona Progetto corrente e poi Applica.
-
Prova una delle seguenti operazioni:
Passa alla pagina Trace Explorer legacy. Questa pagina legge i dati di traccia e span da un database diverso rispetto alla pagina Trace Explorer.
Utilizza l'Cloud Trace API per inviare uno span al tuo progetto Google Cloud. Per ulteriori informazioni, consulta Forzare la creazione del database per la pagina Esplora traccia.
Dati precedenti mancanti nella pagina Trace Explorer
Stai utilizzando la pagina Esplora tracce e puoi visualizzare i dati recenti, ma quando imposti il selettore dell'intervallo di tempo su 30 giorni o su un valore maggiore, i dati precedenti non vengono visualizzati.
La pagina Trace Explorer non mostra i dati relativi a periodi di tempo superiori al periodo di conservazione dei dati di Cloud Trace, ovvero 30 giorni.
Se il selettore dell'intervallo di tempo è pari o inferiore a 30 giorni, i dati mancanti indicano che il database sottoposto a query dalle query della pagina Trace Explorer è stato creato più di recente rispetto all'impostazione dell'intervallo di tempo. Ad esempio, se imposti questo valore su 20 giorni e puoi vedere solo i dati degli ultimi 10 giorni, il database è stato creato 10 giorni fa. Inoltre, questo database contiene solo le tracce inviate al tuo progetto Google Cloud dopo la sua creazione.
Per visualizzare e analizzare i dati di traccia precedenti, passa alla pagina Esplora traccia legacy. Questa pagina legge i dati di traccia e span da un database diverso rispetto alla pagina Trace Explorer.
Span mancanti in una traccia
Apri la pagina Esplora traccia e seleziona un intervallo da visualizzare. Il riquadro popup Dettagli mostra la traccia, ma mancano alcuni intervalli.
Gli intervalli potrebbero mancare per i seguenti motivi:
La pagina Esplora tracce non esegue ricerche in tutti i progetti Google Cloud che archiviano i dati degli intervalli per la traccia.
Il tuo ruolo IAM in un progetto Google Cloud che memorizza i dati degli intervalli per la traccia non contiene le autorizzazioni necessarie per visualizzare i dati della traccia.
Si è verificato un problema di strumentazione. Ad esempio, solo alcuni span di una traccia sono stati inviati al tuo progetto Google Cloud.
Sono stati scritti nel tuo progetto Google Cloud prima dell'11 gennaio 2025.
Per risolvere questi problemi:
Determina se la traccia è completa nella pagina Esplora tracce legacy:
Dal popup Dettagli della traccia, copia l'ID traccia negli appunti.
Vai alla pagina legacy Trace Explorer:
Incolla l'ID traccia nel campo Trace ID (ID traccia).
La pagina Dettagli traccia viene aggiornata ed elenca i progetti che memorizzando gli intervalli per la traccia.
Se la traccia è completa nella pagina legacy Esplora tracce, riprendi la pagina Esplora tracce e imposta l'elemento Ambito su un ambito della traccia che elenchi tutti i progetti identificati nel passaggio precedente. Si tratta dei progetti che archiviano gli intervalli per la traccia selezionata.
Se non esiste un ambito della traccia che includa i progetti identificati nel passaggio precedente, crea o modifica un ambito della traccia esistente. Per saperne di più, consulta Creare e gestire gli ambiti di traccia.
Se la traccia non è completa nella pagina Esplora tracce legacy, significa che gli span non sono stati registrati o che non disponi del ruolo Utente Cloud Trace (
roles/cloudtrace.user
) nei progetti che memorizzano i dati degli span.
Non disponi delle autorizzazioni necessarie per visualizzare i dati delle tracce
Stai visualizzando la pagina Esplora traccia e vedi la seguente notifica:
You don't have the required permissions to view trace data for one or more projects listed in the trace scope.
Per risolvere il problema, nella barra degli strumenti:
- Espandi l'elemento Ambito e identifica l'ambito della traccia selezionato.
- Nel menu a comparsa Perfeziona ambito, seleziona Gestisci ambiti.
- Individua l'ambito della traccia identificato nel primo passaggio, quindi espandi i dettagli per visualizzare l'elenco dei progetti Google Cloud.
- Per ogni progetto Google Cloud nell'ambito del tracciamento, assicurati di avere il ruolo Utente Cloud Trace (
roles/cloudtrace.user
). Se non disponi di questo ruolo in un progetto, chiedi a un amministratore o al proprietario del progetto di concedertelo.
Forzare la creazione del database per la pagina Trace Explorer
Quando gli unici dati di traccia nel progetto provengono da Google Cloud servizi preconfigurati per Cloud Trace, il database letto dalla pagina Esplora tracce per i dati di traccia e intervallo potrebbe non essere creato. Tuttavia, puoi forzare la creazione di questo database inviando una traccia al tuo progetto Google Cloud utilizzando l'Cloud Trace API.
Ad esempio, puoi eseguire le seguenti operazioni:
- Vai alla pagina della documentazione di
patchTraces
. Nel riquadro Prova questo metodo, segui questi passaggi:
- Nel campo projectId, inserisci PROJECT_ID.
Copia il JSON, che definisce una traccia con un singolo span, negli appunti e poi incollalo nel campo Corpo della richiesta.
Prima di copiare il codice JSON, segui questi passaggi:
- Sostituisci PROJECT_ID con l'ID del tuo progetto.
Sostituisci END_TIME con l'ora corrente e START_TIME con un valore precedente all'ora di fine. Se utilizzi Linux, esegui
date -Isec
per ottenere l'ora corrente nel formato corretto. Ad esempio, potresti impostare questi campi come segue:"startTime": "2024-05-31T15:10:35.398448Z", "endTime": "2024-05-31T15:10:35.574999047Z",
Aggiorna i campi
traceId
espanId
ogni volta che esegui il comando."traces": [ { "projectId": "PROJECT_ID", "traceId": "33fc0d8c45bb4e5cebb29f047931270d", "spans": [ { "spanId": "17941747227541407973", "name": "/", "startTime": "START_TIME", "endTime": "END_TIME", } ] } ]
Premi Esegui.
Quando il comando viene completato correttamente, il corpo della risposta è vuoto. Se vai a Trace Explorer, puoi visualizzare la traccia. Potrebbe esserci un leggero ritardo prima che la traccia sia disponibile nella console Google Cloud.
Risolvere i problemi relativi alla pagina Esplora tracce precedente
Questa sezione descrive come risolvere i problemi quando utilizzi la pagina Esplora tracce legacy.
Nessun dato nell'interfaccia precedente
Utilizzi la pagina Esplora traccia legacy e non riesci a visualizzare alcuna traccia nel tuo progetto Google Cloud quando prevedi che siano presenti dati di traccia.
Per risolvere questo errore, prova i seguenti passaggi:
-
Enable the Cloud Trace API.
Nella console Google Cloud, vai alla pagina API e servizi:
Dopo aver trovato la riga etichettata API Cloud Trace, prova quanto segue:
Se la colonna etichettata Richieste non elenca informazioni numeriche, significa che non vengono inviati dati di traccia al tuo progetto Google Cloud.
Per risolvere la richiesta, controlla le applicazioni e i proxy per assicurarti che siano configurati per inviare le tracce al progetto corretto.
Seleziona l'API Cloud Trace, la scheda Metriche e poi il grafico Errori per metodo API:
Se le scritture non vanno a buon fine, concedi all'account di servizio che fornisce le credenziali di autenticazione il ruolo Agente Cloud Trace (
roles/cloudtrace.agent
). Questo ruolo include l'autorizzazionecloudtrace.traces.patch
, che consente alle applicazioni di scrivere dati di span in un progetto Google Cloud.Per ulteriori informazioni, consulta Ruoli IAM di Cloud Trace.
Se le letture non vanno a buon fine, assicurati che il tuo ruolo IAM nel progetto Google Cloud includa le autorizzazioni nel ruolo Utente di Cloud Trace (
roles/cloutrace.user
). Per un elenco delle autorizzazioni per questo ruolo, consulta Ruoli IAM di Cloud Trace.
Nessun dato di traccia per l'app di cui è stato eseguito il deployment nell'interfaccia precedente
Hai implementato un'app che invia dati al tuo progetto Google Cloud utilizzando l'Cloud Trace API, ma i dati di traccia non vengono raccolti.
Prova quanto segue:
Se non visualizzi alcun dato nella pagina Esplora tracce legacy della console Google Cloud, segui i passaggi descritti nella sezione Nessun dato nell'interfaccia di Trace legacy.
Se l'app non è dipiattaforma Google Cloud o se utilizza un account di servizio per fornire le credenziali di autenticazione, assicurati che all'account di servizio sia stato concesso il ruolo Agente Cloud Trace (
roles/cloudtrace.agent
).Questo ruolo include l'autorizzazione
cloudtrace.traces.patch
, che consente alle applicazioni di scrivere dati sugli intervalli in un progetto Google Cloud.Se l'app si basa su OpenTelemetry, procedi nel seguente modo:
Per il servizio principale, prova ad aggiornare le variabili di ambiente in modo che OpenTelemetry utilizzi il campionatore
traceidratio
con una frequenza di campionamento di0.5
:export OTEL_TRACES_SAMPLER="traceidratio" export OTEL_TRACES_SAMPLER_ARG="0.5"
Per tutti gli altri servizi, lascia la variabile di ambiente
OTEL_TRACES_SAMPLER
non impostata per utilizzare il campionatore predefinito, ovveroparentbased_always_on
. L'impostazione predefinita indica che la decisione di campionamento per un intervallo viene ereditata dall'intervallo principale, se esistente. Se non esiste uno spazio padre, lo spazio viene campionato.
A meno che la tua applicazione non esamini sempre ogni intervallo, in genere non è possibile forzare il monitoraggio end-to-end di una richiesta perché ogni componente di una richiesta end-to-end prende la propria decisione di campionamento. Tuttavia, puoi influenzare la decisione aggiungendo all'intestazione della traccia un flag
sampled
impostato sutrue
. Questa impostazione è un suggerimento per i componenti secondari per campionare la richiesta. Per ulteriori informazioni sulle intestazioni di traccia, consulta Protocolli per la propagazione del contesto.
Messaggio ID span mancante nella traccia
La traccia contiene il messaggio "ID span mancante".
Nei sistemi di monitoraggio distribuito, sono previste tracce incomplete. Una traccia è incompleta quando uno span campionato contiene un riferimento a un altro span che non è stato ricevuto. Il riferimento non risolto può verificarsi per i seguenti motivi:
- L'intervallo a cui si fa riferimento non è stato campionato.
- L'intervallo a cui si fa riferimento è stato campionato, ma non è ancora stato ricevuto da Cloud Trace o è stato ricevuto, ma non archiviato.
Quando visualizzi una traccia incompleta, Cloud Trace mostra il messaggio "ID intervallo mancante" nel riquadro dei dettagli della traccia.
Se visualizzi costantemente il messaggio "ID span mancante", prova a procedere nel seguente modo:
Per i componenti che gestisci, assicurati che rispettino e propaghino il flag
sampled
dell'intestazione, se questo campo è presente. Questa impostazione è un suggerimento per i componenti secondari per campionare la richiesta. Per ulteriori informazioni sulle intestazioni di traccia, consulta Protocolli per la propagazione del contesto.I serviziGoogle Cloud in genere rispettano questo suggerimento. Tuttavia, limitano anche la frequenza con cui scrivono i dati traccia.
Se utilizzi Cloud Service Mesh, assicurati di seguire le indicazioni per la propagazione del contesto della traccia per queste configurazioni. Per indicazioni su Cloud Service Mesh, consulta Propagazione del contesto del tracciato.
Nessun dato traccia dopo l'aggiornamento dell'app Go per l'utilizzo di OpenTelemetry
La tua applicazione si basa sulla libreria client per acquisire le tracce e, dopo aver aggiornato l'applicazione per utilizzare OpenTelemetry, non visualizzi più i dati di Cloud Trace.
Poiché alcune librerie client di Cloud per Go sono integrate con OpenCensus, devi utilizzare un ponte OpenCensus. Per saperne di più sul problema risolto dal bridge, consulta OpenCensus Bridge.
Per informazioni sull'aggiornamento delle librerie client di Cloud per Go, consulta Issue #4237.