O Google Cloud Observability inclui serviços de observabilidade que ajudam a entender o comportamento, a integridade e o desempenho dos aplicativos, incluindo aplicativos de agentes. Entender como os aplicativos se comportam e como os componentes se conectam ajuda você a antecipar, identificar e responder a mudanças inesperadas com rapidez e eficácia.
Este documento inclui as seguintes informações:
- Definições de termos como observabilidade, observabilidade do agente e observabilidade do aplicativo e APM.
- Os benefícios dos serviços de observabilidade para desenvolver e manter aplicativos confiáveis.
- Como o Google Cloud Observability ajuda a monitorar e manter a integridade dos aplicativos e da infraestrutura.
- Etapas para começar a usar a observabilidade no Google Cloud.
Observabilidade
A observabilidade é uma abordagem abrangente para coletar e analisar dados de telemetria e ajudar você a entender o estado dos seus aplicativos, incluindo os agentes e o ambiente operacional deles. Os dados de telemetria incluem dados de registro, métricas e rastreamento. Ele também pode incluir outros dados gerados pelos seus aplicativos, como comandos e respostas. Os dados de telemetria fornecem as informações necessárias para entender a integridade e o desempenho dos seus aplicativos.
- Dados de métricas
- Os dados de métricas são dados numéricos sobre integridade ou desempenho que o sistema mede em intervalos regulares, por exemplo, utilização da CPU e latência da solicitação. Mudanças inesperadas nos dados de métricas podem indicar um problema que precisa ser investigado. Com o tempo, também é possível analisar padrões para entender os padrões de uso e antecipar as necessidades de recursos.
- Dados de registros
Um registro é um registro gerado da atividade do sistema ou do aplicativo ao longo do tempo. Cada registro é uma coleção de entradas de registro com carimbo de data/hora, e cada entrada de registro descreve um evento específico.
Os dados de registro geralmente contêm informações ricas e detalhadas que ajudam a entender o que aconteceu em uma parte específica do seu aplicativo. No entanto, os dados de registro não mostram de maneira eficaz como uma mudança em um componente de aplicativo se relaciona com a atividade em outros componentes. Os dados de rastreamento podem preencher essa lacuna.
- Rastrear dados
Um trace representa o caminho de uma solicitação nos componentes do aplicativo distribuído. Ou seja, cada rastreamento representa uma única operação de ponta a ponta. Como os rastreamentos são compostos de intervalos, que são registros de uma única função ou operação, eles permitem seguir o fluxo de solicitações e examinar dados de latência. Essas informações podem ajudar você a identificar a causa raiz de um problema.
Para aplicativos agênticos, os rastreamentos capturam as ações realizadas pelo agente. Por exemplo, um rastreamento pode capturar chamadas de MCP.
- Outros dados
É possível ter mais insights analisando dados de registro, métricas e traces, além de outras informações relevantes. Por exemplo, um rótulo que indica a gravidade de um incidente ou um ID de cliente em dados de registro fornece contexto útil para solução de problemas e depuração.
Observabilidade do agente
A observabilidade do agente se refere a métodos para entender o estado interno e o comportamento de agentes de software, especialmente agentes com tecnologia de IA criados usando modelos de linguagem grandes (LLMs). Os agentes de IA são não determinísticos e complexos. Portanto, a observabilidade é crucial para entender, depurar, avaliar e melhorar o desempenho, a segurança e a confiabilidade deles.
OGoogle Cloud oferece suporte à observabilidade de aplicativos com o Application Monitoring, que cria painéis com dados de telemetria, métricas de recursos de IA e informações como incidentes abertos. Para saber mais, consulte a seção Observabilidade de agentes e aplicativos em Google Cloud deste documento.
Observabilidade de aplicativos e APM
O monitoramento de desempenho de aplicativos (APM) monitora, diagnostica e gerencia a performance, a disponibilidade e a experiência do usuário de aplicativos de software, incluindo aplicativos de agentes. Um sistema APM geralmente fornece painéis que mostram dados de telemetria e serviços que monitoram esses dados. Esses sistemas ajudam a identificar falhas.
A observabilidade de aplicativos usa dados de telemetria para gerar insights que ajudam você a entender o comportamento dos seus aplicativos.
OGoogle Cloud oferece suporte à observabilidade de aplicativos com o Application Monitoring, que cria painéis com dados de telemetria, métricas de recursos de IA e informações como incidentes abertos. Para saber mais, consulte a seção Observabilidade de agentes e aplicativos em Google Cloud deste documento.
Serviços de observabilidade
Os serviços de observabilidade coletam, analisam e correlacionam dados de telemetria, como dados de registro, métricas e rastreamento. Eles oferecem os seguintes recursos para ajudar você a manter a confiabilidade do aplicativo:
- Detecte problemas de forma proativa antes que eles afetem os usuários.
- Resolver problemas novos e conhecidos.
- Depure aplicativos durante o desenvolvimento.
- Entenda o impacto das mudanças nos seus aplicativos.
- Descubra novos insights com a análise de dados.
Para saber mais sobre práticas de confiabilidade, incluindo princípios e práticas relacionados à observabilidade, leia o livro Engenharia de confiabilidade do site: como o Google executa sistemas de produção. Os temas incluem Monitoramento de sistemas distribuídos, Alertas e Solução de problemas.
Google Cloud Observability
Os serviços do Google Cloud Observability ajudam a coletar, analisar e correlacionar dados de telemetria dos aplicativos e da infraestrutura subjacente. Esses serviços também oferecem padrões integrados para ajudar você a começar. Por exemplo, o monitoramento de aplicativos cria painéis e mapas de topologia para os aplicativos, serviços e cargas de trabalho registrados no App Hub.
Coleta automática de dados de telemetria
O Monitoring, o Logging e o Trace são serviços ativados por padrão quando você cria um projeto do Google Cloud . Esses serviços oferecem os recursos principais para coletar, analisar e visualizar seus dados de telemetria:
- Colete automaticamente dados de telemetria para a maioria dos serviços do Google Cloud .
- Colete registros de auditoria automaticamente da maioria dos serviços do Google Cloud.
- Fornecer serviços de visualização, incluindo painéis e exploradores de telemetria, que permitem visualizar e examinar seus dados de telemetria. Por exemplo, o Explorador de rastreamentos permite ver rastreamentos, períodos e metadados, incluindo comandos e respostas multimodais. Para mais informações, consulte Consultar e visualizar dados de telemetria.
- Forneça serviços de análise baseados em SQL para seus dados de registros e rastreamento. Por exemplo, use o BigQuery para comparar URLs nos seus dados de registro com um conjunto de dados público de URLs maliciosos conhecidos.
- Fornecer monitoramento de aplicativos e de telemetria. Por exemplo, é possível criar políticas de alertas que notificam quando os dados de registros ou de métricas atendem às condições especificadas. Também é possível usar o monitoramento sintético para testar o desempenho dos aplicativos.
Colete dados de telemetria dos seus aplicativos instrumentados. Instrumentação é o código adicionado a um aplicativo para emitir dados de telemetria.
Para instrumentar seu aplicativo, recomendamos que você use uma estrutura de instrumentação de código aberto e neutra em relação a fornecedores, como OpenTelemetry, em vez de APIs ou bibliotecas de cliente específicas do fornecedor e do produto. Para mais informações sobre esses frameworks, consulte Instrumentação e observabilidade e Escolher uma abordagem de instrumentação.
Observabilidade de agentes e aplicativos
O Monitoramento de aplicativos no Google Cloud fornece observabilidade do agente e do aplicativo. Esse serviço oferece painéis e mapas de topologia que permitem entender a integridade e o desempenho dos aplicativos, serviços e cargas de trabalho do App Hub. Ele também gera e mostra métricas, como taxas de erro e uso de tokens para recursos de IA. Para gerar essas métricas, o Application Monitoring filtra e agrega seus dados de rastreamento usando rótulos e eventos específicos do aplicativo que seguem as convenções semânticas de IA generativa do OpenTelemetry.
Para a capacidade de observação do agente, recomendamos criar agentes com o framework do Kit de Desenvolvimento de Agente (ADK). Como o ADK depende do OpenTelemetry, a telemetria gerada pelo ADK é consistente com as convenções semânticas de IA generativa do OpenTelemetry.
Para depurar falhas, monitorar custos ou analisar o comportamento do agente, incluindo os agentes da plataforma do Gemini Enterprise, do Agent Gateway e do Model Armor, você precisa de dados de registros, métricas e rastreamentos:
- Os registros fornecem informações sobre eventos e erros.
- Com as métricas, é possível monitorar a latência e o uso de tokens.
- Os rastreamentos fornecem informações sobre caminhos de execução e são analisados para derivar métricas como o número de chamadas de modelo ou o uso total de tokens. Essas métricas derivadas oferecem visibilidade da performance e do comportamento do agente. Para mais informações, consulte Ver recursos de IA.
- Com os dados de comandos e respostas, você pode avaliar a qualidade e a tomada de decisões do agente usando o serviço de avaliação de IA generativa.
O painel "Monitoramento de aplicativos" de um aplicativo mostra uma lista dos serviços e das cargas de trabalho dele, como apps do Gemini Enterprise, agentes da plataforma de agentes do Gemini Enterprise e servidores MCP:
É possível identificar serviços e cargas de trabalho de agentes usando o tipo de infraestrutura ou o tipo funcional do App Hub. A coluna de tipo funcional fica oculta por padrão.
Para exemplos de código, consulte o seguinte:
Suporte para identificar erros
O Error Reporting analisa entradas de registro do Cloud Logging para encontrar erros. Quando o Error Reporting encontra erros, ele anota as entradas de registro associadas e cria um grupo de erros. Analise esses grupos para identificar a causa e o histórico do erro.
Suporte para criação de perfil
Com o Cloud Profiler, é possível analisar o uso de CPU e o uso da memória dos seus aplicativos para identificar oportunidades de melhorar o desempenho.
Primeiros passos
Nesta seção, descrevemos as etapas que você pode seguir para se familiarizar com os recursos de observabilidade no Google Cloud.
Consultar os guias de início rápido
Use os guias de início rápido para se familiarizar com os serviços disponíveis.
Ver dados coletados automaticamente
A maioria dos serviços do Google Cloud gera automaticamente dados de registro e métricas. Isso significa que é possível começar a ver alguns dados de observabilidade dos serviços Google Cloud com suporte sem configuração adicional.
- Alguns serviços do Google Cloud , como o Google Kubernetes Engine (GKE), o Compute Engine e o Cloud SQL, oferecem painéis padrão no console do Google Cloud para visualizar dados de observabilidade no contexto do serviço.
- O Compute Engine, o GKE e o Cloud Run geram dados de métricas e registros do sistema por padrão. Você configura a coleta de dados adicionais.
- As funções do Cloud Run e o App Engine geram automaticamente dados de métricas, registros e traces.
Também é possível criar um gráfico dos dados de métricas coletados no Metrics Explorer, ver os dados de Análise de registros no Análise de registros ou ver os dados de trace no Trace. Para analisar os dados relacionados juntos, crie painéis personalizados. Por exemplo, é possível criar um painel que inclua dados de registros, dados de métricas de performance e políticas de alertas para máquinas virtuais.
Configurar as VMs do Compute Engine para coletar mais dados
Por padrão, as VMs do Compute Engine coletam apenas dados básicos de métricas do sistema e de registros. No entanto, é possível instalar o Agente de operações para coletar outros dados de telemetria das instâncias e aplicativos do Compute Engine para solução de problemas, monitoramento de desempenho e alertas. O Agente de operações não é um aplicativo agêntico. Em vez disso, ele é um software determinístico que coleta dados de telemetria.
- Colete automaticamente dados de métricas do host, como CPU, GPU, memória e processo.
- Colete automaticamente dados de registros do sistema, como syslog das VMs do Linux e log de eventos do Windows das VMs do Windows.
- É possível observar seus aplicativos com o seguinte:
- Integrações de aplicativos de terceiros para softwares conhecidos, como Postgres, MongoDB e Java Virtual Machine. Essas integrações incluem painéis e políticas de alerta pré-configurados.
- Dados de métricas do Prometheus
- Dados de métricas e traces do protocolo OpenTelemetry (OTLP)
- Dados de registros de aplicativos
- Para ver um resumo dos dados de telemetria coletados, consulte a Visão geral do agente de operações.
Configurar clusters do GKE para coletar mais dados
Por padrão, os clusters do GKE enviam dados de registros e métricas do sistema para o Logging e o Monitoring. O Google Cloud Managed Service para Prometheus processa a coleta de dados de métricas de terceiros e definidos pelo usuário.
- Use pacotes de dados de métricas de observabilidade para entender o estado dos aplicativos e recursos do cluster. Por exemplo, os dados de métricas do plano de controle são úteis para criar SLOs para monitorar a disponibilidade e a latência do serviço.
- Monitore aplicativos de terceiros, como Postgres, MongoDB e Redis. Essas integrações fornecem painéis pré-configurados e políticas de alerta.
Configurar o Cloud Run para coletar dados personalizados
Se você tiver um serviço do Cloud Run que grava dados de métricas do Prometheus, use o arquivo secundário do Prometheus para enviar os dados de métricas ao Cloud Monitoring.
Se o serviço do Cloud Run gravar dados de métricas OTLP, use um arquivo secundário do OpenTelemetry. Para ver um exemplo, consulte o tutorial para coletar dados de métricas do OTLP usando o arquivo secundário.