Questa pagina fornisce informazioni di panoramica sulla raccolta delle tracce con OpenTelemetry. Per monitorare e eseguire il debug delle richieste Spanner, puoi attivare le tracce nelle librerie client Spanner. Il monitoraggio lato client e end-to-end può aiutarti a monitorare le prestazioni e a risolvere i problemi di debug.
Le tracce forniscono informazioni pertinenti per ogni richiesta di un client, ad esempio:
Intervalli con timestamp del momento in cui il client ha inviato una richiesta RPC e del momento in cui il client ha ricevuto la risposta RPC, inclusa la latenza causata dalla rete e dal sistema client.
Attributi (coppie chiave-valore) che forniscono informazioni sul cliente e sulla relativa configurazione.
Annotazioni con eventi importanti negli intervalli.
Per ulteriori informazioni su span e attributi, consulta Span e Attributi nella documentazione di OpenTelemetry.
Monitoraggio end-to-end
Oltre al monitoraggio lato client, puoi attivare il monitoraggio end-to-end (Anteprima). Il monitoraggio end-to-end ti aiuta a comprendere e risolvere i problemi di latenza specifici di Spanner, ad esempio:
Identifica se la latenza è dovuta alla latenza della rete tra la tua applicazione e Spanner o se si verifica all'interno di Spanner.
Identifica le Google Cloud regioni attraverso le quali vengono inoltrate le richieste della tua applicazione e se esiste una richiesta tra regioni. Una richiesta tra regioni solitamente comporta latenze più elevate tra la tua applicazione e Spanner.
OpenTelemetry
Le librerie client di Spanner supportano la raccolta delle tracce utilizzando le API OpenTelemetry. OpenTelemetry è un framework di osservabilità open source. OpenTelemetry offre una vasta gamma di configurazioni, come gli esportatori per backend specifici, i rapporti di campionamento e i limiti di intervallo.
Esportare le tracce con gli esportatori e i collector
Nell'ambito delle configurazioni, puoi esportare le tracce in un backend di osservabilità. La maggior parte dei provider di servizi di osservabilità offre gli esportatori da utilizzare, come Trace Exporter.
Oltre a un esportatore, OpenTelemetry consiglia di configurare un raccoglitore. Un raccoglitore consente al tuo servizio di scaricare rapidamente i dati e di occuparsi di una gestione aggiuntiva, come i tentativi di nuovo invio, l'aggregazione e la crittografia. Un raccoglitore viene eseguito insieme alla tua applicazione. Il collector riceve i messaggi OLTP, li elabora ed esporta nel backend di observability.
Limitazioni
Le tracce Spanner presentano le seguenti limitazioni:
- Gli intervalli di traccia sono disponibili solo per le librerie client Java e Go.
- Le tracce end-to-end possono essere esportate solo in Cloud Trace.
Fatturazione
Oltre all'utilizzo di Spanner, il monitoraggio può comportare costi tramite il backend di observability.
L'importazione di intervalli di traccia nel backend di observability è fatturabile. Ad esempio, se utilizzi Cloud Trace come backend, la fatturazione avviene in base ai prezzi di Cloud Trace.
Per comprendere meglio la fatturazione, inizia con un rapporto di campionamento delle tracce ridotto in base al tuo traffico.
Passaggi successivi
Per configurare il monitoraggio lato client e end-to-end, consulta Configurare la raccolta delle tracce utilizzando OpenTelemetry.