O Cloud Trace, um sistema de geração de trace distribuído para o Google Cloud, ajuda você a entender quanto tempo leva para o aplicativo processar solicitações recebidas de usuários ou outros aplicativos e quanto tempo leva para concluir operações como chamadas RPC realizadas ao lidar com as solicitações.
Como o Cloud Trace coleta dados de latência do App Engine, balanceadores de carga HTTP(S) e aplicativos instrumentados com a API Cloud Trace, ele pode ajudar você responde às seguintes perguntas:
- Quanto tempo meu aplicativo leva para lidar com uma determinada solicitação?
- Por que meu aplicativo está demorando tanto para processar uma solicitação?
- Por que algumas das minhas solicitações demoram mais que outras?
- Qual é a latência geral das solicitações para meu aplicativo?
- A latência para meu aplicativo aumentou ou diminuiu ao longo do tempo?
- O que eu posso fazer para reduzir a latência do aplicativo?
- Quais são as dependências do meu aplicativo?
Se quiser saber como usar o Cloud Trace para ajudar a gerenciar seus aplicativos, leia o blog Solução de problemas de aplicativos distribuídos: como usar traces e registros juntos para análise da causa raiz.
Para informações sobre como criar o perfil do seu aplicativo, consulte Cloud Profiler.
Suporte ao ambiente
O Cloud Trace é executado no Linux nos seguintes ambientes:
- Compute Engine
- Google Kubernetes Engine (GKE)
- Ambiente flexível do App Engine
- Ambiente padrão do App Engine
- Cloud Run
- Ambientes que não são do Google Cloud
O Cloud Trace fornece bibliotecas de cliente para instrumentar seu aplicativo para capturar informações de rastreamento. Para instruções de configuração por linguagem, consulte Como configurar o Cloud Trace.
Configurações com rastreamento automático
Algumas configurações resultam na captura automática de dados de trace:
Ambiente padrão do App Engine
Os aplicativos Java 8, Python 2 e PHP 5 não precisam usar as bibliotecas de cliente do Cloud Trace. Esses ambientes de execução enviam automaticamente dados de latência ao Cloud Trace para solicitações a URIs de aplicativos. As solicitações incluem dados de latência para chamadas RPC de ida e volta para os serviços do App Engine. O Cloud Trace funciona com todas as APIs administradoras do App Engine, com exceção do Cloud SQL.
Cloud Functions e Cloud Run
Para solicitações HTTP recebidas e enviadas, os dados de latência são coletados automaticamente.
Suporte ao idioma
A tabela a seguir resume a disponibilidade das bibliotecas de cliente do Trace e do OpenTelemetry para os quais há um exportador para o Cloud Trace.
Idioma | Biblioteca de cliente disponível |
Lib/exportador do OpenTelemetry disponível |
---|---|---|
C++ | Sim | Sim |
C# ASP.NET Core | Sim | Não |
C# ASP.NET | Sim | Não |
Go | Sim | Sim |
Java | Sim | Sim |
Node.js | Sim | Sim |
PHP | Sim | Não |
Python | Sim | Sim |
Ruby | Sim | Sim |
As bibliotecas do OpenTelemetry são mais simples de usar do que as do Cloud Trace porque escondem parte da complexidade da API Trace correspondente. Para recomendações de instrumentação, consulte Escolher uma abordagem de instrumentação.
Componentes
O Cloud Trace consiste em um cliente de rastreamento, que coleta traces e os envia ao projeto do Google Cloud. Em seguida, use o console do Google Cloud para visualizar e analisar os dados coletados pelo agente.
Um trace descreve o tempo que um aplicativo leva para concluir uma única operação. Cada trace consiste em um ou mais períodos. Um período descreve quanto tempo leva para executar uma suboperação completa. Por exemplo, um trace pode descrever quanto tempo leva para processar uma solicitação recebida de um usuário e retornar uma resposta. Um período pode descrever por quanto tempo uma chamada RPC específica leva. Para mais informações, consulte Modelo de dados do Cloud Trace.
Cliente de rastreamento
Se uma biblioteca do OpenTelemetry estiver disponível para sua linguagem de programação, será possível simplificar o processo de criação e envio de dados de rastreamento usando o OpenTelemetry. Além de ser mais simples de usar, o OpenTelemetry implementa o envio em lotes, o que pode melhorar o desempenho.
Se não houver uma biblioteca do OpenTelemetry, instrumente seu código importando a biblioteca do SDK do Trace e usando a API Cloud Trace. A API Cloud Trace coleta dados de trace e os envia para seu projeto do Google Cloud.
Interface de rastreamento
Depois que o agente tiver coletado dados de trace, será possível visualizar e analisar esses dados quase em tempo real na interface do Cloud Trace.
A página Explorador de traces permite examinar detalhes de um trace individual. Por padrão, essa visualização exibe um gráfico da latência de todos os traces e listas e, em uma tabela, os traces mais recentes. Selecione um trace para visualizar informações mais detalhadas, como os períodos no trace, as informações de latência para cada período e para o trace e links para registros e eventos. Para informações sobre como filtrar e visualizar detalhes do trace, consulte Encontrar e explorar traces.
A página Relatórios de análise permite criar relatórios personalizados. Esses relatórios podem incluir todos os traces ou, ao especificar filtros, incluir apenas um subconjunto de traces. Também é possível criar relatórios que comparam dois conjuntos diferentes de dados de latência. Para mais informações, consulte Criar e ver relatórios.
Segurança de dados
O Cloud Trace é um serviço compatível com o VPC Service Controls. Para saber mais, veja a documentação do VPC Service Controls.
Preços e uso
Para informações sobre como visualizar seu uso atual ou anterior, consulte Visualizar uso por conta de faturamento.
Para informações sobre preços, consulte Preços de observabilidade do Google Cloud.
A seguir
Confira o Início rápido.
Consulte Cotas e limites para mais informações.
Leia nossos recursos sobre DevOps e conheça o programa de pesquisa Pesquisa e avaliação de DevOps.