Google Cloud Observability include servizi di osservabilità che ti aiutano a comprendere il comportamento, l'integrità e le prestazioni delle tue applicazioni, incluse quelle basate su agenti. Comprendere il comportamento delle applicazioni e il modo in cui i componenti si connettono ti aiuta ad anticipare, identificare e rispondere a modifiche impreviste in modo rapido ed efficace.
Questo documento include le seguenti informazioni:
- Definizioni di termini come osservabilità, osservabilità degli agenti e osservabilità delle applicazioni e APM.
- I vantaggi dei servizi di osservabilità per lo sviluppo e la manutenzione di applicazioni affidabili.
- In che modo Google Cloud Observability ti aiuta a monitorare e mantenere l'integrità di applicazioni e infrastruttura.
- Passaggi per iniziare a utilizzare l'osservabilità inGoogle Cloud.
Osservabilità
L'osservabilità è un approccio completo alla raccolta e all'analisi dei dati di telemetria per aiutarti a comprendere lo stato delle tue applicazioni, incluse quelle agentiche, e del loro ambiente operativo. I dati di telemetria includono dati di log, dati di metrica e dati di traccia. Può anche includere altri dati generati dalle tue applicazioni, come prompt e risposte. I dati di telemetria forniscono le informazioni necessarie per comprendere l'integrità e le prestazioni delle tue applicazioni.
- Dati delle metriche
- I dati delle metriche sono dati numerici relativi all'integrità o alle prestazioni che il sistema misura a intervalli regolari, ad esempio l'utilizzo della CPU e la latenza delle richieste. Le variazioni impreviste dei dati delle metriche potrebbero indicare un problema che devi esaminare. Nel tempo, puoi anche analizzare i pattern per comprendere i pattern di utilizzo e anticipare le esigenze di risorse.
- Dati di log
Un log è un record generato dell'attività del sistema o dell'applicazione nel tempo. Ogni log è una raccolta di voci di log con timestamp e ogni voce di log descrive un evento specifico.
I dati di log spesso contengono informazioni dettagliate che ti aiutano a capire cosa è successo in una parte specifica della tua applicazione. Tuttavia, i dati di log non mostrano in modo efficace la relazione tra una modifica in un componente dell'applicazione e l'attività in altri componenti. I dati di Trace possono colmare questo divario.
- Dati di Trace
Una traccia rappresenta il percorso di una richiesta attraverso i componenti della tua applicazione distribuita. In altre parole, ogni traccia rappresenta una singola operazione end-to-end. Poiché le tracce sono composte da intervalli, che sono record per una singola funzione o operazione, ti consentono di seguire il flusso delle richieste ed esaminare i dati sulla latenza. Queste informazioni possono aiutarti a identificare la causa principale di un problema.
Per le applicazioni basate su agenti, le tracce acquisiscono le azioni eseguite dall'agente. Ad esempio, una traccia può acquisire le chiamate MCP.
- Altri dati
Puoi ottenere ulteriori insight analizzando i dati di log, metriche e tracce insieme ad altre informazioni pertinenti. Ad esempio, un'etichetta che indica la gravità di un avviso o un ID cliente nei dati di log fornisce un contesto utile per la risoluzione dei problemi e il debug.
Osservabilità dell'agente
L'osservabilità degli agenti si riferisce ai metodi per comprendere lo stato interno e il comportamento degli agenti software, in particolare degli agenti basati sull'AI creati utilizzando modelli linguistici di grandi dimensioni (LLM). Gli agenti AI sono non deterministici e complessi. Pertanto, l'osservabilità è fondamentale per comprendere, eseguire il debug, valutare e migliorare le prestazioni, la sicurezza e l'affidabilità.
Google Cloud fornisce supporto per l'osservabilità delle applicazioni con Application Monitoring, che crea dashboard che mostrano i dati di telemetria, i dati delle metriche delle risorse AI e informazioni come gli avvisi aperti. Per saperne di più, consulta la sezione Osservabilità degli agenti e delle applicazioni in Google Cloud di questo documento.
Osservabilità delle applicazioni e APM
Application Performance Monitoring (APM) monitora, diagnostica e gestisce le prestazioni, la disponibilità e l'esperienza utente delle applicazioni software, incluse le applicazioni agentiche. Un sistema APM in genere fornisce dashboard che mostrano i dati di telemetria e i servizi che li monitorano. Questi sistemi ti aiutano a identificare gli errori.
L'osservabilità delle applicazioni utilizza i dati di telemetria per generare insight che ti aiutano a comprendere il comportamento delle tue applicazioni.
Google Cloud fornisce supporto per l'osservabilità delle applicazioni con Monitoraggio delle applicazioni, che crea dashboard che mostrano i dati di telemetria, i dati delle metriche delle risorse AI e informazioni come gli avvisi aperti. Per saperne di più, consulta la sezione Osservabilità degli agenti e delle applicazioni in Google Cloud di questo documento.
Servizi di osservabilità
I servizi di osservabilità raccolgono, analizzano e correlano i dati di telemetria, come i dati di log, metriche e tracce. Forniscono le seguenti funzionalità per aiutarti a mantenere l'affidabilità delle applicazioni:
- Rileva in modo proattivo i problemi prima che si ripercuotano sugli utenti.
- Risolvi i problemi noti e quelli nuovi.
- Eseguire il debug delle applicazioni durante lo sviluppo.
- Comprendere l'impatto delle modifiche alle tue applicazioni.
- Scopri nuovi insight tramite l'esplorazione dei dati.
Per scoprire di più sulle pratiche di affidabilità, inclusi i principi e le pratiche relativi all'osservabilità, leggi il libro Site Reliability Engineering: How Google Runs Production Systems. Gli argomenti includono Monitoraggio dei sistemi distribuiti, Avvisi e Risoluzione dei problemi.
Google Cloud Observability
I servizi di Google Cloud Observability ti aiutano a raccogliere, analizzare e correlare i dati di telemetria, sia dalle tue applicazioni che dall'infrastruttura sottostante. Questi servizi forniscono anche impostazioni predefinite integrate per aiutarti a iniziare. Ad esempio, Application Monitoring crea dashboard e mappe della topologia per le applicazioni, i servizi e i workload registrati in App Hub.
Raccolta automatica dei dati di telemetria
Monitoring, Logging e Trace sono servizi abilitati per impostazione predefinita quando crei un progetto Google Cloud . Questi servizi forniscono le funzionalità di base per raccogliere, analizzare e visualizzare i dati di telemetria:
- Raccogli automaticamente i dati di telemetria per la maggior parte dei servizi Google Cloud .
- Raccogli automaticamente gli audit log per la maggior parte dei servizi Google Cloud.
- Fornire servizi di visualizzazione, tra cui dashboard ed esploratori di telemetria, che ti consentono di visualizzare ed esaminare i tuoi dati di telemetria. Ad esempio, Esplora tracce consente di visualizzare tracce, intervalli e metadati, inclusi prompt e risposte multimodali. Per saperne di più, consulta Esegui query e visualizza i dati di telemetria.
- Fornire servizi di analisi basati su SQL per i dati di log e di traccia. Ad esempio, puoi utilizzare BigQuery per confrontare gli URL nei dati di log con un set di dati pubblico di URL dannosi noti.
- Fornire il monitoraggio delle applicazioni e della telemetria. Ad esempio, puoi creare policy di avviso che ti informano quando i dati di log o delle metriche soddisfano le condizioni specificate. Puoi anche utilizzare il monitoraggio sintetico per testare le prestazioni delle tue applicazioni.
Raccogli i dati di telemetria dalle tue applicazioni instrumentate. L'instrumentazione è il codice che aggiungi a un'applicazione per emettere dati di telemetria.
Per instrumentare la tua applicazione, ti consigliamo di utilizzare un framework di strumentazione open source e indipendente dal fornitore, come OpenTelemetry, anziché API o librerie client specifiche del fornitore e del prodotto. Per informazioni su questi framework, consulta Osservabilità per gli sviluppatori di applicazioni e Scegli un approccio di strumentazione.
Osservabilità di agenti e applicazioni
Application Monitoring in Google Cloud fornisce l'osservabilità sia degli agenti sia delle applicazioni. Questo servizio fornisce dashboard e mappe della topologia che ti consentono di comprendere l'integrità e le prestazioni delle applicazioni, dei servizi e dei workload di App Hub. Inoltre, genera e visualizza metriche come le percentuali di errore e l'utilizzo dei token per le risorse AI. Per generare queste metriche, Application Monitoring filtra e aggrega i dati di traccia utilizzando etichette ed eventi specifici dell'applicazione che seguono le convenzioni semantiche di OpenTelemetry GenAI.
Per l'osservabilità degli agenti, ti consigliamo di creare i tuoi agenti con il framework Agent Development Kit (ADK). Poiché l'ADK si basa su OpenTelemetry, la telemetria generata dall'ADK è coerente con le convenzioni semantiche di OpenTelemetry GenAI.
Per eseguire il debug degli errori, monitorare i costi o analizzare il comportamento degli agenti, inclusi quelli di Gemini Enterprise Agent Platform, Agent Gateway e Model Armor, hai bisogno di dati di log, metriche e tracce:
- I log forniscono informazioni su eventi ed errori.
- Le metriche ti consentono di monitorare la latenza e l'utilizzo dei token.
- Le tracce forniscono informazioni sui percorsi di esecuzione e vengono analizzate per ricavare metriche come il numero di chiamate al modello o l'utilizzo totale dei token. Queste metriche derivate forniscono visibilità sulle prestazioni e sul comportamento dell'agente. Per saperne di più, consulta Visualizza le risorse AI.
- I dati dei prompt e delle risposte ti consentono di valutare la qualità e il processo decisionale degli agenti utilizzando il servizio di valutazione dell'AI generativa.
La dashboard di monitoraggio delle applicazioni per un'applicazione mostra un elenco dei servizi e dei workload dell'applicazione, ad esempio app Gemini Enterprise, agenti Gemini Enterprise Agent Platform e server MCP:
Puoi identificare i servizi e i workload agentici utilizzando il tipo di infrastruttura o il tipo funzionale di App Hub. La colonna Tipo funzionale è nascosta per impostazione predefinita.
Per esempi di codice, consulta quanto segue:
- Osservabilità per gli sviluppatori di agenti AI.
- Raccogliere e visualizzare prompt e risposte multimodali.
Assistenza per l'identificazione degli errori
Error Reporting analizza le voci di log di Cloud Logging per trovare gli errori. Quando Error Reporting rileva errori, annota le voci di log associate e crea un gruppo di errori. Esplora questi gruppi di errori per identificare la causa e la cronologia dell'errore.
Supporto per la profilazione
Cloud Profiler ti consente di analizzare l'utilizzo della CPU e la memoria utilizzata da parte delle tue applicazioni per identificare le opportunità di miglioramento delle prestazioni.
Inizia
Questa sezione descrive i passaggi che puoi seguire per acquisire familiarità con le funzionalità di osservabilità in Google Cloud.
Prova le guide rapide
Prova le guide rapide per acquisire familiarità con i servizi disponibili.
Visualizza i dati raccolti automaticamente
La maggior parte dei servizi Google Cloud genera automaticamente dati di log e metriche. Ciò significa che puoi iniziare a visualizzare alcuni dati di osservabilità per i servizi Google Cloud supportati senza ulteriori configurazioni.
- Alcuni servizi Google Cloud come Google Kubernetes Engine (GKE), Compute Engine e Cloud SQL forniscono dashboard predefinite nella console Google Cloud per visualizzare i dati di osservabilità nel contesto del servizio.
- Compute Engine, GKE e Cloud Run generano dati delle metriche di sistema e dati di log per impostazione predefinita. Configuri la raccolta di dati aggiuntivi.
- Cloud Run Functions e App Engine generano automaticamente dati delle metriche, dei log e delle tracce.
Puoi anche creare grafici dei dati delle metriche raccolte in Esplora metriche, visualizzare i dati di log in Esplora log o visualizzare i dati di traccia in Trace. Per esaminare insieme i dati correlati, crea dashboard personalizzate. Ad esempio, puoi creare una dashboard che includa dati di log, dati delle metriche sul rendimento e policy di avviso per le macchine virtuali.
Configura le VM di Compute Engine per raccogliere dati aggiuntivi
Per impostazione predefinita, le VM di Compute Engine raccolgono solo dati di metriche di sistema e dati di log di base. Tuttavia, puoi installare Ops Agent per raccogliere dati di telemetria aggiuntivi dalle istanze e dalle applicazioni Compute Engine per la risoluzione dei problemi, il monitoraggio delle prestazioni e la generazione di avvisi. Ops Agent non è un'applicazione agentica. Si tratta invece di un software deterministico che raccoglie dati di telemetria.
- Raccogli automaticamente i dati delle metriche host, come i dati delle metriche di CPU, GPU, memoria e processi.
- Raccogli automaticamente i dati dei log di sistema, ad esempio syslog dalle VM Linux e il log eventi di Windows dalle VM Windows.
- Puoi osservare le tue applicazioni con quanto segue:
- Integrazioni con applicazioni di terze parti per software diffusi, come Postgres, MongoDB e Java Virtual Machine. Queste integrazioni includono dashboard e policy di avviso preconfigurate.
- Dati delle metriche di Prometheus
- Dati di metriche e tracce OpenTelemetry Protocol (OTLP)
- Dati dei log delle applicazioni
- Per un riepilogo dei dati di telemetria raccolti, consulta la panoramica di Ops Agent.
Configura i cluster GKE per raccogliere dati aggiuntivi
Per impostazione predefinita, i cluster GKE inviano i dati dei log di sistema e delle metriche di sistema a Logging e Monitoring. Google Cloud Managed Service per Prometheus gestisce la raccolta dei dati delle metriche di terze parti e dei dati delle metriche definiti dall'utente.
- Utilizza i pacchetti di dati delle metriche di osservabilità per comprendere lo stato delle tue applicazioni e delle risorse del cluster. Ad esempio, i dati delle metriche del control plane sono utili per creare SLO per monitorare la disponibilità e la latenza dei servizi.
- Monitora applicazioni di terze parti come Postgres, MongoDB e Redis. Queste integrazioni forniscono dashboard e policy di avviso preconfigurate.
Configura Cloud Run per raccogliere dati personalizzati
Se hai un servizio Cloud Run che scrive dati delle metriche di Prometheus, puoi utilizzare il sidecar di Prometheus per inviare i dati delle metriche a Cloud Monitoring.
Se invece il tuo servizio Cloud Run scrive dati delle metriche OTLP, puoi utilizzare un sidecar OpenTelemetry. Per un esempio, consulta il tutorial per la raccolta dei dati delle metriche OTLP utilizzando il sidecar.