Esta página orienta você pelas seguintes etapas:
- Instale os pacotes do OpenTelemetry.
- Configure seu aplicativo para exportar períodos para o Cloud Trace.
- Configure sua plataforma.
Para ver informações sobre a versão, consulte:
Para conteúdo de referência do OpenTelemetry, consulte:
Para ver os detalhes mais recentes sobre o OpenTelemetry para C++, além de documentação e exemplos extras, consulte OpenTelemetry.
Antes de começar
Ative a API Cloud Trace.
Papéis necessários para ativar APIs
Para ativar as APIs, você precisa do papel do IAM de administrador de Service Usage (roles/serviceusage.serviceUsageAdmin), que
contém a permissão serviceusage.services.enable. Saiba como conceder
papéis.
Instalar os pacotes do OpenTelemetry
- Configure um ambiente de desenvolvimento em C++.
- Instale a biblioteca do exportador do OpenTelemetry em C++ Google Cloud . Para informações sobre a instalação, consulte o guia de início rápido do OpenTelemetry.
Configurar a exportação de períodos para o Cloud Trace
Para configurar a exportação de dados de trace, chame o método google::cloud::otel::ConfigureBasicTracing(...) no método main():
O campo project_id é o Google Cloud projeto em que você quer armazenar os
traces.
O método ConfigureBasicTracing(...) instancia um
TracerProvider objeto que implementa
um exportador do Cloud Trace. Se o objeto retornado pela chamada para ConfigureBasicTracing(...) sair do escopo, o objeto TracerProvider anterior será reinstalado, quando existir.
Configurar a taxa de amostragem
Os aplicativos podem gerar um grande volume de dados de trace. O exemplo a seguir ilustra como configurar a taxa de amostragem:
Exportar para o Cloud Trace com um TracerProvider personalizado
Você pode ter casos de uso que exigem um objeto TracerProvider personalizado. Por exemplo, se você quiser usar vários exportadores ao mesmo tempo, crie um objeto TracerProvider personalizado. Nesses casos, você pode usar o exportador do Cloud Trace diretamente:
Instrumentar seu próprio aplicativo
Para ver informações sobre como configurar seu aplicativo para capturar períodos de rastreamento, consulte Rastreamento do OpenTelemetry. Esta página descreve como fazer o seguinte:
- Criar um período
- Criar períodos aninhados
- Definir atributos de período
- Criar períodos com eventos
- Criar períodos com links
Exemplo de aplicativo
Para um exemplo de aplicativo, consulte o guia de início rápido.
Configure sua plataforma
Você pode usar o Cloud Trace em Google Cloud e outras plataformas.
Execução no app Google Cloud
Quando seu aplicativo está em execução no Google Cloud, não é necessário fornecer credenciais de autenticação na forma de uma conta de serviço para a biblioteca de cliente. No entanto, verifique se o escopo de acesso da API Cloud Trace está ativado na sua plataforma. Google Cloud
Para uma lista de ambientes compatíveis Google Cloud , consulte Suporte ao ambiente.
Para as seguintes configurações, as definições de escopo de acesso padrão ativam a API Cloud Trace:
- Ambiente flexível do App Engine
Ambiente padrão do App Engine
Google Kubernetes Engine (GKE)
.Compute Engine
Cloud Run
Se você usar escopos de acesso personalizados, verifique se o escopo de acesso da API Cloud Trace está ativado.
Para informações sobre como configurar os escopos de acesso para o ambiente usando o Google Cloud console, consulte Como configurar o Google Cloud projeto.
Para usuários do
gcloud, especifique os escopos de acesso usando a flag--scopese inclua o escopo de acesso da API Cloud Tracetrace.append. Por exemplo, para criar um cluster do GKE com apenas a API Cloud Trace ativada, faça o seguinte:gcloud container clusters create example-cluster-name --scopes=https://www.googleapis.com/auth/trace.append
Execução local e em outro lugar
Se o aplicativo estiver em execução fora do Google Cloud, então você deve fornecer as credenciais de autenticação na forma de uma conta de serviço para a biblioteca de cliente. A conta de serviço precisa conter o papel de agente do Cloud Trace. Para instruções, consulte Como criar uma conta de serviço.
AsGoogle Cloud bibliotecas de cliente usam Application Default Credentials (ADC) para encontrar as credenciais do aplicativo.
Você pode fornecer essas credenciais de uma destas três maneiras:
Corrida
gcloud auth application-default loginColoque a conta de serviço em um caminho padrão para seu sistema operacional. A seguir, listamos os caminhos padrão para Windows e Linux:
Windows:
%APPDATA%/gcloud/application_default_credentials.jsonLinux:
$HOME/.config/gcloud/application_default_credentials.json
Defina a variável de ambiente
GOOGLE_APPLICATION_CREDENTIALSpara o caminho da sua conta de serviço:
Linux/macOS
export GOOGLE_APPLICATION_CREDENTIALS=path-to-your-service-accounts-private-key
Windows
set GOOGLE_APPLICATION_CREDENTIALS=path-to-your-service-accounts-private-key
PowerShell:
$env:GOOGLE_APPLICATION_CREDENTIALS="path-to-your-service-accounts-private-key"
Ver traces
No Google Cloud console, acesse a página
Explorador de traces:
Acessar o Explorador de traces
Também é possível encontrar essa página usando a barra de pesquisa.
Solução de problemas
Para informações sobre como solucionar problemas com o Cloud Trace, acesse a página de solução de problemas.
Para depurar o exportador do Cloud Trace em C++, consulte a seção Solução de problemas da documentação de referência.
Recursos
- https://opentelemetry.io/
- Repositório open-telemetry/opentelemetry-cpp do GitHub
- Repositório google-cloud-cpp OpenTelemetry Exporters Library do GitHub.