O Cloud Trace, um sistema de rastreio distribuído para o Google Cloud, ajuda a compreender quanto tempo a sua aplicação demora a processar os pedidos recebidos de utilizadores ou outras aplicações, e quanto tempo demora a concluir operações como chamadas RPC realizadas durante o processamento dos pedidos. O rastreio também pode ajudar quando está a desenvolver um serviço ou a resolver problemas de uma falha. Por exemplo, pode ajudar a compreender como os pedidos são processados numa arquitetura de microsserviços complexa e pode ajudar a identificar os registos a examinar.
Uma vez que o Trace recebe dados de latência de alguns Google Cloud serviços, como o App Engine, e de aplicações instrumentadas com a API Cloud Trace, pode ajudar a responder às seguintes perguntas:
- Quanto tempo demora a minha aplicação a processar um determinado pedido?
- Por que motivo a minha aplicação está a demorar tanto tempo a processar um pedido?
- Por que motivo alguns dos meus pedidos demoram mais do que outros?
- Qual é a latência geral dos pedidos para a minha aplicação?
- A latência da minha aplicação aumentou ou diminuiu ao longo do tempo?
- O que posso fazer para reduzir a latência da aplicação?
- Quais são as dependências da minha aplicação?
Se tiver curiosidade em saber como pode usar o Trace para ajudar a gerir as suas aplicações, leia a publicação no blogue Resolução de problemas de aplicações distribuídas: usar rastreios e registos em conjunto para análise da causa principal.
Para ver informações sobre a criação de perfis da sua aplicação, consulte o Cloud Profiler.
Apoio técnico do ambiente
O rastreio é 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 nãoGoogle Cloud
O Trace fornece bibliotecas de cliente para instrumentar a sua aplicação de modo a capturar informações de rastreio. Para ver instruções de configuração por idioma, consulte o artigo Instrumente para rastrear.
Configurações com rastreio automático
Algumas configurações resultam na captura automática de dados de rastreio:
Ambiente padrão do App Engine
As aplicações Java 8, Python 2 e PHP 5 não precisam de usar as bibliotecas cliente do Trace. Estes tempos de execução enviam automaticamente dados de latência para o Trace para pedidos de URIs de aplicações. Os pedidos incluem dados de latência para chamadas RPC de ida e volta aos serviços do App Engine. O Trace funciona com todas as APIs Admin do App Engine, exceto com o Cloud SQL.
Funções do Cloud Run e Cloud Run
Para pedidos HTTP de entrada e saída, os dados de latência são enviados automaticamente para o Trace.
Suporte de idiomas
A tabela seguinte resume a disponibilidade das bibliotecas de cliente de rastreio e das bibliotecas OpenTelemetry para as quais existe um exportador para o rastreio.
Idioma | Biblioteca cliente disponível |
lib/exporter 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 OpenTelemetry são mais simples de usar do que as bibliotecas cliente do Trace, porque ocultam parte da complexidade da API Trace correspondente. Para recomendações de instrumentação, consulte o artigo Escolha uma abordagem de instrumentação.
Componentes
O Trace consiste num cliente de rastreio, que recolhe rastreios e envia-os para o seu Google Cloud projeto. Em seguida, pode usar a Google Cloud consola para ver e analisar os dados recolhidos pelo agente. Para ver informações sobre o modelo de dados, consulte o artigo Rastreios e intervalos.
Cliente de rastreio
Se estiver disponível uma biblioteca do OpenTelemetry para a sua linguagem de programação, pode simplificar o processo de criação e envio de dados de rastreio através do OpenTelemetry. Além de ser mais simples de usar, o OpenTelemetry implementa o processamento em lote, o que pode melhorar o desempenho.
Se não existir uma biblioteca OpenTelemetry, instrumente o seu código importando a biblioteca do SDK Trace e usando a API Cloud Trace. A API Cloud Trace envia dados de rastreio para o seu Google Cloud projeto.
Interface de rastreio
Pode ver e analisar os seus dados de rastreio quase em tempo real na interface de rastreio.
A página Explorador de rastreios apresenta informações agregadas sobre os seus dados de rastreio e permite-lhe examinar rastreios individuais em detalhe. Os dados de latência agregados são apresentados num mapa térmico, que pode explorar com o ponteiro. Para restringir os dados apresentados, pode adicionar filtros. Esta página também lhe permite ver e explorar intervalos individuais e rastreios:
- Para obter informações sobre como ver dados de rastreio armazenados em vários projetos, consulte o artigo Crie e faça a gestão do âmbito do rastreio.
- Para obter informações sobre como filtrar e ver os dados de rastreio, consulte o artigo Encontre e explore rastreios.
Suporte dos VPC Service Controls
O Trace é um serviço suportado pelos VPC Service Controls. O nome do serviço de rastreio é cloudtrace.googleapis.com
. Quaisquer restrições dos VPC Service Controls que criar para o serviço Trace aplicam-se apenas a esse serviço. Essas restrições não se aplicam a outros serviços, incluindo os como o serviço telemetry.googleapis.com
, que também podem carregar dados de rastreio.
Para mais informações, consulte o seguinte:
Preços
Para saber mais sobre os preços do Cloud Trace, consulte a página de preços do Google Cloud Observability.
O que se segue?
Experimente o início rápido.
Para ver informações sobre quotas e limites, consulte o artigo Quotas e limites.
Leia os nossos recursos sobre DevOps e explore o programa de investigação DevOps Research and Assessment.