Cloud Trace, un sistema di tracciamento distribuito per Google Cloud, ti aiuta a capire quanto tempo impiega la tua applicazione a gestire le richieste in entrata da utenti o altre applicazioni e quanto tempo impiega a completare operazioni come le chiamate RPC eseguite durante la gestione delle richieste. Trace può aiutarti anche quando sviluppi un servizio o risolvi un errore. Ad esempio, può aiutarti a capire come vengono elaborate le richieste in un'architettura di microservizi complessa e può aiutarti a identificare i log da esaminare.
Poiché Trace riceve dati di latenza da alcuni servizi Google Cloud, come App Engine, e da applicazioni instrumentate con l'API Cloud Trace, può aiutarti a rispondere alle seguenti domande:
- Quanto tempo impiega la mia applicazione a gestire una determinata richiesta?
- Perché la mia applicazione richiede così tanto tempo per gestire una richiesta?
- Perché alcune delle mie richieste richiedono più tempo di altre?
- Qual è la latenza complessiva delle richieste alla mia applicazione?
- La latenza della mia applicazione è aumentata o diminuita nel tempo?
- Cosa posso fare per ridurre la latenza dell'applicazione?
- Quali sono le dipendenze della mia applicazione?
Se vuoi scoprire come utilizzare Trace per gestire le tue applicazioni, leggi il post del blog Risoluzione dei problemi delle applicazioni distribuite: utilizzo congiunto di tracce e log per l'analisi della causa principale.
Per informazioni sulla profilazione della tua applicazione, vedi Cloud Profiler.
Supporto dell'ambiente
Trace viene eseguito su Linux nei seguenti ambienti:
- Compute Engine
- Google Kubernetes Engine (GKE)
- Ambiente flessibile di App Engine
- Ambiente standard di App Engine
- Cloud Run
- Ambienti nonGoogle Cloud
Trace fornisce librerie client per instrumentare l'applicazione in modo da acquisire informazioni di traccia. Per istruzioni di configurazione per lingua, vedi Strumento per Trace.
Configurazioni con tracciamento automatico
Alcune configurazioni comportano l'acquisizione automatica dei dati di traccia:
Ambiente standard di App Engine
Le applicazioni Java 8, Python 2 e PHP 5 non devono utilizzare le librerie client Trace. Questi runtime inviano automaticamente i dati di latenza a Trace per le richieste agli URI delle applicazioni. Le richieste includono dati di latenza per le chiamate RPC round trip ai servizi App Engine. Trace funziona con tutte le API App Engine Admin, ad eccezione di Cloud SQL.
Cloud Run Functions e Cloud Run
Per le richieste HTTP in entrata e in uscita, i dati di latenza vengono inviati automaticamente a Trace.
Supporto dei linguaggi
La seguente tabella riassume la disponibilità delle librerie client di Trace e delle librerie OpenTelemetry per le quali esiste un esportatore per Trace.
Lingua | Libreria client disponibile |
Libreria lib/exporter di OpenTelemetry disponibile |
---|---|---|
C++ | Sì | Sì |
C# ASP.NET Core | Sì | No |
C# ASP.NET | Sì | No |
Go | Sì | Sì |
Java | Sì | Sì |
Node.js | Sì | Sì |
PHP | Sì | No |
Python | Sì | Sì |
Ruby | Sì | Sì |
Le librerie OpenTelemetry sono più semplici da utilizzare rispetto alle librerie client Trace perché nascondono parte della complessità dell'API Trace corrispondente. Per i consigli sull'instrumentazione, vedi Scegliere un approccio di instrumentazione.
Componenti
Trace è costituito da un client di tracciamento che raccoglie le tracce e le invia al tuo progetto Google Cloud . Puoi quindi utilizzare la consoleGoogle Cloud per visualizzare e analizzare i dati raccolti dall'agente. Per informazioni sul modello dei dati, vedi Tracce e intervalli.
Client di tracciamento
Se è disponibile una libreria OpenTelemetry per il tuo linguaggio di programmazione, puoi semplificare il processo di creazione e invio dei dati di traccia utilizzando OpenTelemetry. Oltre a essere più semplice da usare, OpenTelemetry implementa il batching, che potrebbe migliorare le prestazioni.
Se non esiste una libreria OpenTelemetry, instrumenta il codice importando la libreria SDK Trace e utilizzando l'Cloud Trace API. L'API Cloud Trace invia i dati di traccia al tuo progetto Google Cloud .
Interfaccia di tracciamento
Puoi visualizzare e analizzare i dati di traccia quasi in tempo reale nell'interfaccia di Trace.
La pagina Esplora trace mostra informazioni aggregate sui dati di traccia e consente di esaminare in dettaglio le singole tracce. I dati di latenza aggregati vengono visualizzati in una mappa termica, che puoi esplorare con il puntatore. Per limitare i dati visualizzati, puoi aggiungere filtri. Questa pagina ti consente anche di visualizzare ed esplorare singoli span e trace:
- Per informazioni su come visualizzare i dati di traccia archiviati in più progetti, vedi Creare e gestire l'ambito della traccia.
- Per informazioni sul filtraggio e la visualizzazione dei dati di traccia, consulta Trovare ed esplorare le tracce.
Supporto dei Controlli di servizio VPC
Trace è un servizio supportato dai Controlli di servizio VPC. Il nome del servizio di Trace è cloudtrace.googleapis.com
. Eventuali
limitazioni dei Controlli di servizio VPC che crei per il
servizio Trace si applicano solo a quel servizio. Queste limitazioni
non si applicano ad altri servizi, inclusi quelli come il servizio
telemetry.googleapis.com
,
che può anche importare dati di traccia.
Per ulteriori informazioni, consulta le seguenti risorse:
Prezzi
Per informazioni sui prezzi di Cloud Trace, consulta la pagina Prezzi di Google Cloud Observability.
Passaggi successivi
Prova la guida rapida.
Per informazioni su quote e limiti, consulta Quote e limiti.
Leggi le nostre risorse su DevOps ed esplora il programma di ricerca e valutazione DevOps.