Observabilidade em Google Cloud

O Google Cloud Observability inclui serviços de observabilidade que ajudam a entender o comportamento, a integridade e o desempenho dos aplicativos, incluindo aplicativos agênticos. 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:

Observabilidade

A observabilidade é uma abordagem abrangente para coletar e analisar dados de telemetria para ajudar você a entender o estado dos seus aplicativos, incluindo os agênticos, e o ambiente operacional deles. Os dados de telemetria incluem dados de registro, de métricas e de trace. Ele também pode incluir outros dados gerados pelos 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 a integridade ou o desempenho que o sistema mede em intervalos regulares, como utilização da CPU e latência da solicitação. Alterações inesperadas nos dados de métricas podem indicar um problema que você precisa investigar. 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 data e 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 ocorreu em uma parte específica do aplicativo. No entanto, os dados de registro não mostram de forma eficaz como uma mudança em um componente de aplicativo se relaciona com a atividade em outros componentes. Os dados de trace podem preencher essa lacuna.

Rastrear dados

Um trace representa o caminho de uma solicitação nos componentes do seu aplicativo distribuído. Ou seja, cada trace representa uma única operação de ponta a ponta. Como os traces são compostos por períodos, que são registros de uma única função ou operação, eles permitem que você siga o fluxo de solicitações e examine os dados de latência. Essas informações podem ajudar a identificar a causa raiz de um problema.

Para aplicativos agênticos, os traces capturam as ações que o agente realiza. Por exemplo, um trace 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 alerta ou um ID de cliente nos dados de registro fornece um 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 não são deterministas e são 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 que mostram dados de telemetria, dados de métricas de recursos de IA e informações como alertas abertos. Para saber mais, consulte a seção Observabilidade de agentes e aplicativos no Google Cloud deste documento.

Observabilidade de aplicativos e APM

O Monitoramento de desempenho de aplicativos (APM) monitora, diagnostica e gerencia o desempenho, a disponibilidade e a experiência do usuário de aplicativos de software, incluindo aplicativos de agentes. Um sistema de APM geralmente fornece painéis que exibem dados de telemetria e serviços que monitoram dados de telemetria. 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 que mostram dados de telemetria, dados de métricas de recursos de IA e informações como alertas abertos. Para saber mais, consulte a seção Observabilidade de agentes e aplicativos no Google Cloud deste documento.

Serviços de observabilidade

Os serviços de observabilidade coletam, analisam e correlacionam dados de telemetria, como dados de registro, de métricas e de trace. Eles oferecem os seguintes recursos para ajudar a manter a confiabilidade do aplicativo:

  • Detecte problemas de forma proativa antes que eles afetem os usuários.
  • Resolver problemas novos e conhecidos.
  • Depurar 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 tópicos incluem Como monitorar sistemas distribuídos, Como criar alertas e Como resolver 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 fornecem padrões integrados para ajudar você a começar. Por exemplo, o Monitoramento de Aplicativos cria painéis e mapas de topologia para seus aplicativos, serviços e cargas de trabalho registrados no App Hub.

Coleta automática de dados de telemetria

Monitoring, Logging e 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 da maioria dos serviços do Google Cloud .
  • Colete registros de auditoria automaticamente da maioria dos serviços do Google Cloud.
  • Oferecer serviços de visualização, incluindo painéis e exploradores de telemetria, que permitem visualizar e examinar seus dados de telemetria. Por exemplo, o Trace explorer permite visualizar traces, períodos e metadados, incluindo comandos multimodais e respostas. 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 registro e de trace. Por exemplo, use o BigQuery para comparar URLs nos seus dados de registro com um conjunto de dados público de URLs mal-intencionados conhecidos.
  • Fornecer monitoramento de aplicativos e de telemetria. Por exemplo, é possível criar políticas de alertas que notificam você quando os dados de registro ou de métricas atendem às condições especificadas. Também é possível usar o monitoramento sintético para testar o desempenho dos aplicativos.
  • Coletar 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 o uso de um framework de instrumentação de código aberto e neutro em relação a fornecedores, como o OpenTelemetry, em vez de APIs ou bibliotecas de cliente específicas de fornecedores e produtos. Para mais informações sobre esses frameworks, consulte Observabilidade para desenvolvedores de aplicativos e Escolher uma abordagem de instrumentação.

Observabilidade de agentes e aplicativos

O Monitoramento de aplicativos no Google Cloud oferece 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 exibe 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 os dados de trace usando rótulos e eventos específicos do aplicativo que seguem as convenções semânticas de IA generativa do OpenTelemetry.

Para a observabilidade do agente, recomendamos criar seus agentes com o framework do Kit de Desenvolvimento de Agente (ADK). Como o ADK depende do OpenTelemetry, a telemetria gerada por ele é 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 Gemini Enterprise Agent Platform, do Gateway de Agente e do Model Armor, você precisa de dados de registro, métrica e trace:

  • Os registros fornecem informações sobre eventos e erros.
  • As métricas permitem monitorar a latência e o uso de tokens.
  • Os traces fornecem informações sobre os 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 fornecem visibilidade sobre o desempenho e o comportamento do agente. Para mais informações, consulte Ver recursos de IA.
  • Os dados de comando e resposta permitem avaliar a qualidade e a tomada de decisões do agente usando o serviço de avaliação de IA generativa.

O painel de monitoramento de aplicativos exibe uma lista dos serviços e cargas de trabalho do aplicativo, como apps do Gemini Enterprise, agentes da Gemini Enterprise Agent Platform e servidores MCP:

Uma visão geral que lista os serviços e as cargas de trabalho em um aplicativo.

É 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:

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 de erros para identificar a causa e o histórico do erro.

Suporte para criação de perfil

O Cloud Profiler permite 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.

Analisar dados coletados automaticamente

A maioria dos serviços do Google Cloud gera automaticamente dados de registro e de métricas. Isso significa que é possível analisar alguns dados observáveis dos serviços com suporte do Google Cloud sem configurações adicionais.

  • Alguns serviços do Google Cloud , como Google Kubernetes Engine (GKE), Compute Engine e Cloud SQL, fornecem painéis padrão no console do Google Cloud para visualizar os dados observáveis 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 registro na 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 registro, 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 e registros do sistema. 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. Na verdade, é um software determinista que coleta dados de telemetria.

Configurar clusters do GKE para coletar mais dados

Por padrão, os clusters do GKE enviam dados de registro do sistema e dados de métricas do sistema para o Logging e o Monitoring. O Serviço Gerenciado do Google Cloud para Prometheus processa a coleta de dados de métricas de terceiros e definidas pelo usuário.

  • Use pacotes de dados de métricas de observabilidade para entender o estado dos aplicativos e dos 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, você poderá usar 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.