O Google Cloud Observability inclui serviços de observabilidade que ajudam a entender o comportamento, a integridade e o desempenho dos aplicativos, incluindo os aplicativos de agente. A visibilidade de como os aplicativos se comportam e como os componentes estão conectados ajuda a antecipar, identificar e responder a mudanças inesperadas de maneira mais rápida e eficaz.
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 holística para coletar e analisar dados de telemetria e entender o estado dos aplicativos, incluindo os aplicativos de agente, e o ambiente operacional deles. Os dados de telemetria incluem dados de registro, métricas e traces. Eles também podem 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 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, por exemplo, utilização da CPU e latência da solicitação. Mudanças inesperadas nos dados de métricas podem indicar um problema a ser investigado. Com o tempo, também é possível analisar padrões para entender melhor 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 registros geralmente contêm informações detalhadas e úteis para entender o que ocorreu em uma parte específica do aplicativo. No entanto, os dados de registro não mostram de maneira eficaz como uma mudança em um componente do 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 nas partes do aplicativo distribuído. Ou seja, cada trace representa uma única operação de ponta a ponta. Como os traces são compostos de períodos, que são registros de uma única função ou operação, eles permitem acompanhar o fluxo de solicitações e examinar os dados de latência. Essas informações podem ajudar a identificar a causa raiz de um problema.
Para aplicativos de agente, 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 com outras informações relevantes. Por exemplo, um rótulo que indica a gravidade de um incidente ou um ID de cliente nos registros 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). Como os agentes de IA são não determinísticos e complexos, a observabilidade é crucial para entender, depurar, avaliar e melhorar o desempenho, a segurança e a confiabilidade deles.
Google Cloud oferece suporte à observabilidade de aplicativos com Monitoramento de aplicativos, que cria painéis que mostram telemetria, métricas de recursos de IA e informações como incidentes abertos. Para saber mais, consulte a seção Observabilidade do agente e do aplicativo Google Cloud neste documento.
Observabilidade do aplicativo 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 agente. Um sistema de APM normalmente fornece painéis que mostram telemetria e serviços que monitoram a telemetria. Esses sistemas ajudam a identificar o que está falhando.
A observabilidade do aplicativo usa dados de telemetria para gerar insights que podem ajudar a entender o comportamento dos aplicativos.
Google Cloud oferece suporte à observabilidade de aplicativos com Monitoramento de aplicativos, que cria painéis que mostram telemetria, métricas de recursos de IA e informações como incidentes abertos. Para saber mais, consulte a seção Observabilidade do agente e do aplicativo Google Cloud neste documento.
Serviços de observabilidade
Os serviços de observabilidade coletam, analisam e correlacionam dados de telemetria, como dados de registro, métricas e traces. Esses serviços ajudam a manter a confiabilidade do aplicativo, fornecendo os seguintes recursos:
- Detectar problemas de maneira proativa antes que eles afetem os usuários.
- Solucionar problemas conhecidos e novos.
- Depurar aplicativos durante o desenvolvimento.
- Entender o impacto das mudanças nos aplicativos.
- Descobrir novos insights por meio da exploração 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 monitoramento de sistemas distribuídos, alertas, e solução de problemas.
Google Cloud Observability
Os serviços no Google Cloud Observability ajudam a coletar, analisar e correlacionar dados de telemetria, tanto dos aplicativos quanto da infraestrutura subjacente. Esses serviços também fornecem padrões integrados para ajudar você a começar mais rápido. 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 estão entre os serviços ativados por padrão quando você cria um Google Cloud projeto. Esses serviços fornecem os recursos principais para coletar, analisar e visualizar a telemetria:
- Coletar telemetria automaticamente para a maioria dos Google Cloud serviços.
- Coletar registros de auditoria automaticamente para a maioria dos Google Cloud serviços.
- Fornecer serviços de visualização, incluindo painéis e exploradores de telemetria, que permitem visualizar e examinar a telemetria. Por exemplo, o Explorador de traces permite visualizar traces, períodos e metadados, incluindo comandos e respostas multimodais. Para mais informações, consulte Consultar e visualizar dados de telemetria.
- Fornecer serviços de análise baseados em SQL para dados de registro e trace. Por exemplo, use o BigQuery para comparar URLs nos seus registros com um conjunto de dados público de URLs maliciosos conhecidos.
- Fornecer monitoramento de aplicativos e telemetria. Por exemplo, é possível criar políticas de alertas que notificam você quando os dados de registro ou métricas atendem às condições especificadas. Também é possível usar o monitoramento sintético para testar o desempenho dos aplicativos.
Coletar telemetria dos 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 de fornecedores, como o OpenTelemetry, em vez de APIs ou bibliotecas de cliente específicas do fornecedor e do produto. Para informações sobre essas estruturas, consulte Instrumentação e observabilidade e Escolher uma abordagem de instrumentação.
Observabilidade do agente e do aplicativo
O Monitoramento de aplicativos em Google Cloud fornece observabilidade do agente e do aplicativo. Esse serviço fornece painéis e mapas de topologia que permitem entender a integridade e o desempenho dos App Hub aplicativos, serviços e cargas de trabalho. 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 Monitoramento de aplicativos filtra e agrega os dados de trace usando rótulos e eventos específicos do aplicativo que seguem as convenções semânticas do OpenTelemetry GenAI.
Para a observabilidade 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 do OpenTelemetry GenAI.
Para depurar falhas, monitorar custos ou analisar o comportamento do agente, incluindo agentes da plataforma de agentes do Gemini Enterprise, do Agent Gateway e do Model Armor, você precisa de dados de registro, métricas e traces:
- 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 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 do desempenho e do comportamento do agente. Para mais informações, consulte Visualizar 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 do Monitoramento de aplicativos de um aplicativo mostra uma lista dos serviços e cargas de trabalho do aplicativo, 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 as entradas de registro do Cloud Logging em busca de 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 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.
Visualizar dados coletados automaticamente
A maioria dos Google Cloud serviços gera dados de registro e métricas automaticamente. Isso significa que é possível analisar alguns dados de observabilidade dos serviços com suporte Google Cloud sem configurações adicionais.
- Alguns Google Cloud serviços, como o Google Kubernetes Engine (GKE), Compute Engine e o Cloud SQL, fornecem painéis padrão no Google Cloud console para visualizar os dados de observabilidade no contexto do serviço.
- O Compute Engine, o GKE e o Cloud Run geram métricas e registros do sistema por padrão, e você configura a coleta de outros dados.
- As funções do Cloud Run e o App Engine geram métricas, registros e traces automaticamente.
Também é possível criar um gráfico das métricas coletadas no Metrics Explorer, ver a Análise de registros no Logs Explorer, ou ver traces em Trace. Para analisar os dados relacionados juntos, crie painéis personalizados. Por exemplo, é possível criar um painel que inclua registros, métricas de desempenho 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 métricas e registros básicos 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 de agente. Em vez disso, ele é um software determinístico que coleta telemetria.
- Colete automaticamente métricas do host, como CPU, GPU e memória, e métricas do processo.
- Colete automaticamente registros do sistema, como o syslog das VMs do Linux, e o log de eventos das VMs do Windows.
- Observe seus aplicativos com:
- Integrações de aplicativos de terceiros para softwares conhecidos, como Postgres, MongoDB e Java Virtual Machine, com painéis pré-configurados e políticas de alerta
- Métricas do Prometheus
- Métricas e traces do protocolo OpenTelemetry (OTLP)
- 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 registros e métricas do sistema para o Logging e o Monitoring. O Google Cloud Managed Service para Prometheus processa a coleta de métricas definidas pelo usuário e de terceiros.
- Use pacotes de métricas de observabilidade para entender melhor o estado dos aplicativos e dos recursos do cluster. Por exemplo, as 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 métricas do Prometheus, poderá usar o arquivo secundário do Prometheus para enviar as métricas ao Cloud Monitoring.
Se o serviço do Cloud Run gravar métricas OTLP, você poderá usar um arquivo secundário do OpenTelemetry. Para ver um exemplo, consulte o tutorial para coletar métricas do OTLP usando o arquivo secundário.