Sobre o Cloud Trace

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?

Para informações sobre depuração e criação de perfil do aplicativo, consulte Cloud Debugger e Cloud Profiler.

Suporte ao ambiente

O Cloud Trace é executado no Linux nos seguintes ambientes:

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, a disponibilidade de bibliotecas do OpenCensus que incluem um exportador do Stackdriver e a disponibilidade de bibliotecas do OpenTelemetry que incluem um exportador para o Cloud Trace:

Idioma Biblioteca de cliente
disponível
Biblioteca do
OpenCensus disponível
Biblioteca do
OpenTelemetry disponível
C# ASP.NET Core Sim Não Não
C# ASP.NET Sim Não Não
Go Sim Sim Sim
Java Sim Sim Sim
Node.js Sim Sim Sim
PHP Sim Sim Não
Python Sim Sim Sim
Ruby Sim Não Não

As bibliotecas do OpenTelemetry e do OpenCensus são mais simples de usar porque ocultam parte da complexidade da biblioteca de cliente correspondente do Cloud Trace. Se você usa essas bibliotecas, instrumente o aplicativo para usar o exportador do Cloud Trace.

Para instruções gerais de configuração, consulte Como configurar o Cloud Trace.

Componentes

O Cloud Trace consiste em um cliente de rastreamento, que coleta traces e os envia ao projeto do Google Cloud. É possível usar 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 OpenCensus estiver disponível para sua linguagem de programação, você poderá simplificar o processo de criação e envio de dados de trace usando o OpenCensus. Além de ser mais simples de usar, o OpenCensus implementa lotes que podem melhorar o desempenho.

Se não existir uma biblioteca do OpenCensus, 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 interface contém três páginas: Visão geral, Lista de rastreamento e Relatórios de análise.

Para começar a usar o Cloud Trace, no painel de navegação do Console do Cloud, selecione Trace ou clique no botão a seguir:

Acessar o "Trace"

O console do Trace não exibirá dados, a menos que você tenha acesso a um projeto do Google Cloud que esteja recebendo dados do Trace.

Visão geral

A página Visão geral fornece informações resumidas sobre o aplicativo:

Página de visão geral do Cloud Trace.

O painel Insights exibe uma lista de insights de desempenho para o aplicativo, se aplicável. Esse painel destaca problemas comuns em aplicativos, como chamadas consecutivas para uma função que, se enviadas em lote, podem ser mais eficientes.

O painel Traces recentes exibe os traces mais recentes. Para cada um, são exibidas a latência, a URI e a hora. É possível usar este resumo para entender a atividade atual no aplicativo.

Os URIs mais frequentes e os RPCs mais frequentes listam os URIs e RPCs mais frequentes do dia anterior, com a latência média. Ao clicar em um link em qualquer uma dessas tabelas, você abrirá a página Lista de trace, que é pré-configurada para exibir as solicitações correspondentes. Usando a página Lista de trace, será possível visualizar a latência como uma função do tempo e investigar detalhes de qualquer trace individual.

O painel Extensão de trace carregável exibe o número de períodos ingeridos no mês atual e o total do mês anterior. Você pode usar essas informações para monitorar seus custos de uso do Cloud Trace. Para mais informações sobre custos, consulte a seção Preços nesta página.

O painel Relatórios de análise diária exibe dados de latência do dia anterior e os compara aos dados de latência de sete dias anteriores. Usando esses dados, é possível ver se seu comportamento de latência está mudando com o tempo. Não é possível alterar o formato dos relatórios nesta página. No entanto, é possível criar relatórios de análise personalizados.

Para saber mais sobre a página Visão geral do Cloud Trace, consulte Como visualizar traces no Console do Cloud.

Rastrear lista

A página Lista 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.

Se você selecionar um trace específico para examinar, dois novos painéis serão abertos: um painel que exibe todos os períodos no trace e um painel de informações que exibe detalhes sobre o período selecionado. Por padrão, o período raiz é selecionado e os detalhes incluem informações resumidas sobre a solicitação. Para encontrar traces para investigação, use filtros.

Para mais informações sobre como filtrar e visualizar detalhes do trace, consulte Como encontrar e visualizar traces e Como visualizar detalhes do trace.

Relatórios de análise

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 Como criar relatórios de análise.

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.

A seguir