Questo argomento descrive come esaminare un componente Spanner per trovare l'origine della latenza e visualizzarne la latenza utilizzando OpenTelemetry. Per una panoramica generale dei componenti di questo argomento, consulta Punti di latenza in una richiesta Spanner.
OpenTelemetry è un framework e un toolkit di osservabilità open source che consente puoi creare e gestire dati di telemetria come tracce, metriche e log. È il risultato della fusione tra OpenTraccia e OpenCensus. Per ulteriori informazioni, consulta la sezione Che cos'è OpenTelemetry?
Le librerie client di Spanner forniscono metriche e tracce con l'uso del framework di osservabilità OpenTelemetry. Segui la procedura in Identifica il punto di latenza per trovare componenti o componenti che mostrano latenza in Spanner.
Prima di iniziare
Prima di iniziare ad acquisire le metriche di latenza, familiarizza con le strumentazione con OpenTelemetry. Devi configurare l'SDK OpenTelemetry e le opzioni appropriate per esportare i dati di telemetria. Esistono diversi tipi di Opzioni di esportazione OpenTelemetry disponibili. Ti consigliamo di usare lo strumento OpenTelemetry Esportatore di protocolli (OTLP). Altre opzioni includono l'utilizzo di un raccoglitore OTel con Google Cloud Exporter o Google Managed Service per Prometheus Exporter.
Se esegui la tua applicazione su Compute Engine, puoi utilizzare Agente per raccogliere metriche e tracce del protocollo OpenTelemetry. Per ulteriori informazioni, consulta Raccolta di metriche e tracce OTLP.
Aggiungi dipendenze
Per configurare l'SDK OpenTelemetry e l'esportatore OTLP, aggiungi quanto segue le dipendenze per la tua applicazione.
Java
Vai
Inserisci l'oggetto OpenTelemetry
Quindi, crea un oggetto OpenTelemetry con l'esportatore OTLP e inserisci il valore
Oggetto OpenTelemetry utilizzando SpannerOptions
.
Java
Vai
Acquisisci e visualizza la latenza di round trip del client
La latenza di round trip del client è il periodo di tempo (in millisecondi) che intercorre tra primo byte della richiesta API Spanner che il client invia a il database (tramite il frontend GFE e l'API Spanner), e l'ultimo byte di risposta che il client riceve dal database.
Acquisisci la latenza di round trip del client
La metrica di latenza di round trip del client Spanner non è supportata utilizzando OpenTelemetry. Puoi instrumentare la metrica utilizzando OpenCensus con una ponte ed eseguire la migrazione dei dati in OpenTelemetry.
Visualizza la latenza di round trip del client
Dopo aver recuperato le metriche, puoi visualizzare la latenza di andata e ritorno del client in e configurazione in Cloud Monitoring.
Ecco un esempio di grafico che illustra la latenza del 5° percentile per la latenza di andata e ritorno del client. Per modificare la latenza percentile in il 50° o il 99° percentile, utilizza il menu Aggregatore.
Il programma crea una vista denominata roundtrip_latency
. Questa stringa diventa parte
del nome della metrica quando viene esportata in Cloud Monitoring.
Acquisizione e visualizzazione della latenza GFE
La latenza di Google Front End (GFE) è il periodo di tempo (in millisecondi) che intercorre quando la rete Google riceve una chiamata di procedura remota dal client e quando il GFE riceve il primo byte della risposta.
Acquisizione della latenza GFE
Puoi acquisire le metriche di latenza dei GFE abilitando le seguenti opzioni usando la libreria client di Spanner.
Java
Vai
Visualizzare la latenza dei GFE
Dopo aver recuperato le metriche, puoi visualizzare la latenza dei GFE e configurazione in Cloud Monitoring.
Ecco un esempio di grafico che illustra l'aggregazione della distribuzione per la metrica di latenza GFE. Per cambiare la latenza percentile al 5°, 50°, 95° o 99° percentile, utilizza il menu Aggregatore.
Il programma crea una vista denominata spanner/gfe_latency
. Questo
diventa parte del nome della metrica quando viene esportata in
e configurazione in Cloud Monitoring.
Acquisisci e visualizza la latenza delle richieste API Spanner
La latenza delle richieste API Spanner è il periodo di tempo (in secondi) tra il primo byte di richiesta che il frontend dell'API Spanner riceve l'ultimo byte di risposta che l'API Spanner gli invii frontend.
Acquisizione della latenza delle richieste API Spanner
Per impostazione predefinita, questa latenza è disponibile come parte Metriche di Cloud Monitoring. Non devi fare nulla per acquisirla ed esportarla.
Visualizza la latenza delle richieste API Spanner
Puoi utilizzare Esplora metriche.
per visualizzare il grafico
spanner.googleapis.com/api/request_latencies
in Cloud Monitoring.
Ecco un esempio di grafico che illustra la latenza del 5° percentile per Metrica di latenza delle richieste API Spanner. Per modificare il percentile di latenza al 50° o 99° percentile, utilizza l'Aggregatore o dal menu Fogli Google.
Acquisisci e visualizza la latenza delle query
La latenza delle query è il tempo (in millisecondi) necessario per eseguire SQL nel database Spanner.
Acquisisci latenza delle query
Puoi acquisire la latenza delle query nelle seguenti lingue:
Java
Vai
Visualizza la latenza delle query
Dopo aver recuperato le metriche, puoi visualizzare la latenza delle query e configurazione in Cloud Monitoring.
Ecco un esempio di grafico che illustra l'aggregazione della distribuzione per la metrica di latenza GFE. Per cambiare la latenza percentile al 5°, 50°, 95° o 99° percentile, utilizza il menu Aggregatore.
Il programma crea una vista OpenCensus chiamata query_stats_elapsed
.
Questa stringa diventa parte del nome della metrica quando viene esportata in
e configurazione in Cloud Monitoring.
Passaggi successivi
Scopri di più su OpenTelemetry.
Scopri come eseguire la migrazione a OpenTelemetry.
Scopri come utilizzare le metriche per diagnosticare la latenza.