Cloud Trace, un sistema di monitoraggio distribuito per Google Cloud, ti aiuta a capire quanto tempo impiega la tua applicazione a gestire le richieste in arrivo da utenti o altre applicazioni e quanto tempo occorre per completare operazioni come le chiamate RPC eseguite durante la gestione delle richieste. Cloud Trace può aiutarti anche quando sviluppi un servizio o risolvi un problema. Ad esempio, può aiutarti a capire come vengono elaborate le richieste in un'architettura di microservizi complessa e potrebbe aiutarti a identificare i log da esaminare.
Poiché Cloud Trace riceve dati sulla latenza da alcuni servizi Google Cloud, come App Engine, e dalle applicazioni strumentate con l'API Cloud Trace, può aiutarti a rispondere alle seguenti domande:
- Quanto tempo impiega la mia applicazione per gestire una determinata richiesta?
- Perché la mia applicazione sta impiegando 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 Cloud 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 dell'applicazione, consulta Cloud Profiler.
Supporto dell'ambiente
Cloud 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 non Google Cloud
Cloud Trace fornisce librerie client per instrumentare l'applicazione al fine di acquisire le informazioni sulle tracce. Per le istruzioni di configurazione per lingua, consulta Strumento per Cloud Trace.
Configurazioni con monitoraggio automatico
Alcune configurazioni comportano l'acquisizione automatica dei dati delle tracce:
Ambiente standard di App Engine
Le applicazioni Java 8, Python 2 e PHP 5 non devono utilizzare le librerie client Cloud Trace. Questi ambienti di runtime inviano automaticamente i dati sulla latenza a Cloud Trace per le richieste agli URI delle applicazioni. Le richieste includono i dati sulla latenza per le chiamate RPC di andata e ritorno ai servizi App Engine. Cloud Trace funziona con tutte le API App Engine Admin, ad eccezione di Cloud SQL.
Funzioni Cloud Run e Cloud Run
Per le richieste HTTP in entrata e in uscita, i dati sulla latenza vengono inviati automaticamente a Cloud Trace.
Supporto dei linguaggi
La tabella seguente riassume la disponibilità delle librerie client di Trace e delle librerie OpenTelemetry per le quali è disponibile un'esportazione in Cloud Trace.
Lingua | Libreria client disponibile |
Libreria/esportatore 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 di Cloud Trace perché nascondono parte della complessità dell'API Trace corrispondente. Per i consigli sulla misurazione, consulta Scegliere un approccio di misurazione.
Componenti
Cloud Trace è costituito da un client di monitoraggio che raccoglie le tracce e le invia al tuo progetto Google Cloud. Puoi quindi utilizzare la console Google Cloud per visualizzare e analizzare i dati raccolti dall'agente. Per informazioni sul modello dei dati, consulta Tracce e intervalli.
Client di monitoraggio
Se una libreria OpenTelemetry è disponibile per il tuo linguaggio di programmazione, puoi semplificare la procedura di creazione e invio dei dati di traccia utilizzando OpenTelemetry. Oltre ad essere più semplice da utilizzare, OpenTelemetry implementa il batching, che potrebbe migliorare le prestazioni.
Se non esiste una libreria OpenTelemetry, esegui l'instrumentazione del 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 monitoraggio
Puoi visualizzare e analizzare i dati di traccia in tempo quasi reale nell'interfaccia di Cloud Trace.
La pagina Esplora traccia ti consente di esaminare in dettaglio le singole tracce. Per impostazione predefinita, questa visualizzazione mostra un grafico della latenza per tutte le tracce e elenca, in una tabella, le tracce più recenti. Puoi selezionare una traccia per visualizzare informazioni più dettagliate, ad esempio gli elementi della traccia, le informazioni sulla latenza per ogni elemento e per la traccia, e i link a log ed eventi. Per informazioni su come filtrare e visualizzare i dettagli delle tracce, consulta Trovare ed esplorare le tracce.
La pagina Report di analisi ti consente di creare report personalizzati. Questi report possono includere tutte le tracce o, specificando i filtri, solo un sottoinsieme di tracce. Puoi anche creare report che confrontano due diversi set di dati sulla latenza. Per ulteriori informazioni, consulta Creare e visualizzare i report.
Sicurezza dei dati
Cloud Trace è un servizio supportato da Controlli di servizio VPC. Per ulteriori informazioni, consulta la documentazione dei Controlli di servizio VPC.
Prezzi e utilizzo
Per informazioni su come visualizzare l'utilizzo corrente o passato, consulta Visualizzare l'utilizzo per account di fatturazione.
Per le informazioni sui prezzi, consulta 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 DevOps Research and Assessment.