Panoramica dell'osservabilità dei microservizi

Gli strumenti di osservabilità dei microservizi offrono la possibilità di instrumentare le applicazioni per raccogliere e presentare dati di telemetria in Cloud Monitoring, Cloud Logging e Cloud Trace da carichi di lavoro gRPC di cui è stato eseguito il deployment su Google Cloud e altrove.

Questa documentazione è rivolta ai proprietari di servizi gRPC, ai tecnici di affidabilità del sito e a chiunque utilizzi i dati di telemetria per la risoluzione dei problemi e l'ottimizzazione dei carichi di lavoro gRPC.

Observability aggrega i plug-in OpenCensus per metriche, tracce e logging gRPC in un unico plug-in unificato, senza esporre le dipendenze. L'osservabilità dei microservizi utilizza dati di osservabilità integrati con Cloud Monitoring, Cloud Logging e Cloud Trace. La documentazione fornisce istruzioni per incorporare plug-in di osservabilità nelle applicazioni gRPC.

Per aiutarti a raccogliere informazioni ed eseguire il debug delle tue applicazioni, l'osservabilità dei microservizi include le seguenti funzionalità:

  • Generazione del logging degli eventi RPC a livello di trasporto.
  • Supporto del tracciamento distribuito.
  • Supporto di Cloud Monitoring, incluse le dashboard predefinite.
  • Query suggerite di Cloud Logging.
  • Etichette delle risorse ed etichette personalizzate.

Funzionalità

Questa sezione descrive le funzionalità di osservabilità dei microservizi.

Integrazione della telemetria

I pacchetti di plug-in di osservabilità per ogni linguaggio gRPC (C++, Go e Java) sono integrati con Google Cloud Observability per impostazione predefinita. Con una configurazione minima, il plug-in recupera i metadati relativi al progetto e al deployment e configura le quantità predefinite di tracciamento, metriche e generazione dei dati di logging.

Ispeziona gli eventi a livello di trasporto RPC

Il ciclo di vita di una chiamata di procedura remota (RPC) può contenere eventi di metadati, tra cui intestazioni e trailer, eventi relativi a messaggi ed eventi di stato, tra cui lo stato OK e lo stato di errore, nonché gli eventi di fine. Quando utilizzi l'osservabilità dei microservizi, puoi esaminare i dettagli di ogni tipo di evento. Puoi controllare la lunghezza dei messaggi serializzati, l'autorità, gli indirizzi client/server e se il client o il server ha annullato l'RPC.

Con impostazioni esplicite, l'osservabilità dei microservizi può abilitare il logging del payload per messaggi o intestazioni. Puoi impostare separatamente i limiti di dimensioni per i log del payload, dei messaggi di controllo o del payload dell'intestazione. Puoi anche specificare il gruppo di destinazione di metodi con o senza caratteri jolly.

Supporto del tracciamento distribuito per le RPC

L'architettura server può consentire a una RPC di eseguire il fan-out in più chiamate o richieste separate che passano attraverso i componenti. L'osservabilità dei microservizi utilizza il tracciamento distribuito per semplificare l'analisi e la risoluzione dei problemi di sistemi complessi. Il prodotto di osservabilità dei microservizi fornisce supporto integrato per le applicazioni gRPC, allo scopo di avviare tracce, generare span e propagare il contesto di tracciamento.

Acquisire le misurazioni per il monitoraggio delle metriche

Il plug-in offre supporto proprietario per un'ampia gamma di misure a livello di messaggio, di RPC o di metodo, dal numero dei messaggi alle dimensioni dei messaggi e alle latenze. Le misurazioni vengono caricate su Cloud Monitoring. Puoi esplorare le metriche raccolte utilizzando Metrics Explorer di Cloud Monitoring, che ha una dashboard con un set di grafici preesistenti. Puoi anche presentare le metriche nelle tue dashboard personalizzate.

Correlazione tra tracce e log

Le tracce ti aiutano a identificare gli errori e i problemi dei sistemi, mentre le voci di log ti aiutano a identificare i dettagli di eventuali errori e problemi. Insieme, tracce e log forniscono un quadro approfondito degli errori o dei problemi, offrendoti una comprensione più completa delle RPC che coprono sistemi diversi. L'osservabilità dei microservizi mette automaticamente in correlazione i log con le tracce, che vengono campionate in base alle decisioni di campionamento upstream o alle frequenze di campionamento definite dall'utente.

Etichette delle risorse ed etichette personalizzate

Per rendere più efficace l'esplorazione dei dati di osservabilità, l'osservabilità dei microservizi fornisce etichette delle risorse per impostazione predefinita e consente alla tua applicazione di definire etichette personalizzate. Le etichette delle risorse sono coppie chiave-valore specifiche del deployment che annotano la posizione del carico di lavoro, ad esempio il nome del nodo Compute Engine o lo spazio dei nomi di Google Kubernetes Engine.

Le etichette personalizzate offrono un meccanismo per associare informazioni personalizzate come segue:

  • Come etichette di intervallo per tracciare i dati.
  • Come etichette delle metriche ai dati delle metriche.
  • Come etichette voce di log per i dati di logging.

Le etichette personalizzate sono utili quando vuoi includere versioni di origine o nomi canonici di servizi. Puoi utilizzarle per aggiungere informazioni specifiche dell'utente, in modo da identificare dati di osservabilità specifici nei log, nelle metriche e nelle tracce.

Query suggerite

L'osservabilità dei microservizi fornisce automaticamente diverse query suggerite in Cloud Logging. Per informazioni complete, consulta Query suggerite.

Architettura

Il seguente diagramma illustra in che modo l'osservabilità dei microservizi raccoglie e fornisce dati di osservabilità:

Raccolta e gestione dei dati di osservabilità dei microservizi.
Raccolta e gestione dei dati di osservabilità dei microservizi (fai clic per ingrandire)

Innanzitutto, devi specificare la configurazione di osservabilità per il carico di lavoro gRPC. La configurazione di osservabilità è composta dai campi impostati in una variabile di ambiente. La configurazione definisce quanto segue:

  • Intervalli di Trace esportati in Cloud Trace.
  • Dati delle metriche esportati in Cloud Monitoring.
  • Eventi RPC esportati in Cloud Logging.

Puoi quindi visualizzare queste informazioni sulle dashboard personalizzate in Cloud Monitoring e ottenere query suggerite in Cloud Logging. Puoi anche esportare le informazioni da Cloud Trace, Cloud Monitoring e Cloud Logging su piattaforme di terze parti a tua scelta.

Prezzi

Il prezzo per l'osservabilità dei microservizi è lo stesso di quello di Google Cloud Observability. Non sono previsti addebiti separati per l'utilizzo di Cloud Trace, Cloud Logging e Cloud Monitoring con i plug-in di osservabilità dei microservizi. Per ulteriori informazioni, consulta i prezzi di Google Cloud Observability.

Passaggi successivi