Neste documento, mostramos como executar o coletor OpenTelemetry criado pelo Google no Compute Engine para coletar registros, métricas e traces do OTLP de aplicativos instrumentados e exportar esses dados para Google Cloud.
Antes de começar
Para executar o coletor do OpenTelemetry criado pelo Google, você precisa dos seguintes recursos:
- Faça login na sua conta do Google Cloud . Se você começou a usar o Google Cloud, crie uma conta para avaliar o desempenho de nossos produtos em situações reais. Clientes novos também recebem US$ 300 em créditos para executar, testar e implantar cargas de trabalho.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Cloud Logging, Cloud Monitoring, and Cloud Trace APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Cloud Logging, Cloud Monitoring, and Cloud Trace APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.- Uma instância do Compute Engine. Se você não tiver uma instância do Compute Engine, siga as instruções em Criar e iniciar uma instância do Compute Engine.
- Uma instalação do
gcloud. Para informações sobre como instalargcloud, consulte Instalar a CLIgcloud.
Configurar permissões para o coletor
Por padrão, as instâncias do Compute Engine usam a
conta de serviço padrão do Compute Engine,
PROJECT_NUMBER-compute@developer.gserviceaccount.com.
Essa conta de serviço geralmente tem os papéis do Identity and Access Management (IAM)
necessários para gravar as métricas e os registros descritos neste documento:
- Gravador de métricas do Monitoring (
roles/monitoring.metricWriter) - Gravador de registros (
roles/logging.logWriter) - Agente do Cloud Trace
Se você optar por usar uma conta de serviço gerenciado pelo usuário em vez da padrão, ela precisará receber esses mesmos papéis. Para mais informações, consulte Contas de serviço.
Instalar o coletor
Para instalar o coletor do OpenTelemetry criado pelo Google como um pacote na sua instância do Compute Engine, siga estas etapas.
Debian e Ubuntu
Abra uma conexão de terminal com a instância de VM usando SSH ou uma ferramenta semelhante e verifique se você tem acesso a
sudo.Execute o comando a seguir para configurar o repositório de pacotes:
sudo mkdir -p /etc/apt/keyrings sudo curl -o /etc/apt/keyrings/otelcol-google.asc https://packages.cloud.google.com/apt/doc/apt-key.gpg cat <<EOF | sudo tee /etc/apt/sources.list.d/otelcol-google.list deb [signed-by=/etc/apt/keyrings/otelcol-google.asc] https://us-apt.pkg.dev/projects/cloud-ops-agents-artifacts google-cloud-opentelemetry-collector-apt main EOFAtualize o gerenciador de pacotes e instale o pacote:
sudo apt update sudo apt install otelcol-googleDepois de instalado, o coletor OpenTelemetry criado pelo Google é iniciado automaticamente.
CentOS, RHEL e Rocky Linux
Abra uma conexão de terminal com a instância de VM usando SSH ou uma ferramenta semelhante e verifique se você tem acesso a
sudo.Execute o comando a seguir para configurar o repositório de pacotes:
cat <<EOF | sudo tee /etc/yum.repos.d/otelcol-google.repo [otelcol-google] name=Google Built OpenTelemetry Collector baseurl=https://us-yum.pkg.dev/projects/cloud-ops-agents-artifacts/google-cloud-opentelemetry-collector-yum autorefresh=0 enabled=1 type=rpm-md gpgcheck=1 repo_gpgcheck=0 gpgkey=http://dl.google.com/linux/linux_signing_key.pub EOFInstale o pacote:
sudo yum install otelcol-googleDepois de instalado, o coletor OpenTelemetry criado pelo Google é iniciado automaticamente.
SLES
Abra uma conexão de terminal com a instância de VM usando SSH ou uma ferramenta semelhante e verifique se você tem acesso a
sudo.Execute o comando a seguir para configurar o repositório de pacotes:
cat <<EOF | sudo tee /etc/zypp/repos.d/otelcol-google.repo [otelcol-google] name=Google Built OpenTelemetry Collector baseurl=https://us-yum.pkg.dev/projects/cloud-ops-agents-artifacts/google-cloud-opentelemetry-collector-yum autorefresh=0 enabled=1 type=rpm-md gpgkey=http://dl.google.com/linux/linux_signing_key.pub EOFInstale o pacote:
sudo zypper install otelcol-googleDepois de instalado, o coletor OpenTelemetry criado pelo Google é iniciado automaticamente.
Windows
Conecte-se à sua instância usando o RDP ou uma ferramenta semelhante e faça login no Windows.
Abra um terminal do PowerShell com privilégios de administrador. Para isso, clique com o botão direito do mouse no ícone do PowerShell e selecione Executar como administrador.
Execute o seguinte comando do PowerShell para configurar o repositório de pacotes:
googet addrepo otelcol-google ` https://us-googet.pkg.dev/projects/cloud-ops-agents-artifacts/repos/google-cloud-opentelemetry-collector-googetInstale o pacote:
googet install otelcol-googleDepois de instalado, o coletor OpenTelemetry criado pelo Google é iniciado automaticamente.
Implantar o coletor
O Coletor do OpenTelemetry criado pelo Google inclui uma configuração mínima por padrão que não exporta telemetria. Para exportar sua telemetria, depois de instalar o coletor, configure-o substituindo a configuração padrão. Coloque a configuração do coletor nos seguintes arquivos:
- No Linux:
/etc/otelcol-google/config.yaml - No Windows:
C:\Program Files\Google\OpenTelemetry Collector\config.yaml
Configurar o coletor
Fornecemos uma configuração do OpenTelemetry Collector para você usar com o coletor criado pelo Google. Essa configuração foi projetada para fornecer grandes volumes de métricas, registros e traces do OTLP. Essa configuração também foi projetada para evitar problemas comuns de ingestão. É possível adicionar à configuração, mas recomendamos que você não remova elementos.
Esta seção descreve a configuração fornecida, os principais componentes, como exportadores, processadores, receptores e outros componentes disponíveis.
Configuração do coletor fornecida
Você encontra a configuração do coletor no diretóriogoogle-built-opentelemetry-collector
do
repositório opentelemetry-operations-collector:
Exportadoras
A configuração do coletor inclui os seguintes exportadores:
Exportador
googlecloudpara registros e traces. Esse exportador é configurado com um nome de registro padrão.Exportador
googlemanagedprometheuspara métricas. Esse exportador não exige configuração, mas há opções. Para informações sobre as opções de configuração do exportadorgooglemanagedprometheus, consulte Introdução ao OpenTelemetry Collector na documentação do Google Cloud Managed Service para Prometheus.
Processadores
A configuração do coletor inclui os seguintes processadores:
batch: Configurado para agrupar solicitações de telemetria com o número máximo de entradas por solicitação ou no intervalo mínimo de cada 5 segundos (o que ocorrer primeiro). Google Cloud Google Cloudmemory_limiter: Limita o uso da memória do coletor para evitar falhas por falta de memória ao descartar pontos de dados quando o limite é excedido.resourcedetection: Detecta automaticamente rótulos de recursos do Google Cloud , comoproject_id.
Recebedores
A configuração do coletor inclui apenas o
receptor otlp.
Para informações sobre como instrumentar seus aplicativos para enviar traces
e métricas do OTLP para o endpoint do OTLP do coletor, consulte
Escolher uma abordagem de instrumentação.
Componentes disponíveis
O OpenTelemetry Collector criado pelo Google contém os componentes que a maioria dos usuários precisa para ativar uma experiência completa no Google Cloud Observability. Para uma lista completa de componentes disponíveis, consulte Componentes no repositório opentelemetry-operations-collector.
Para solicitar mudanças ou adições aos componentes disponíveis, abra uma solicitação de recurso no repositório opentelemetry-operations-collector.
Gerar telemetria
É possível testar sua configuração usando a ferramenta telemetrygen de código aberto. As instruções para baixar e executar a ferramenta estão incluídas no link. Para executar a ferramenta, instale
o Go ou o Docker.
Após alguns minutos, a telemetria gerada pelo aplicativo começa a fluir pelo coletor para o console do Google Cloud para cada indicador.
Ver telemetria
O coletor do OpenTelemetry criado pelo Google envia métricas, registros e traces dos seus aplicativos instrumentados para o Google Cloud Observability. O coletor também envia métricas de auto-observabilidade. As seções a seguir descrevem como visualizar essa telemetria.
Ver suas métricas
O coletor do OpenTelemetry criado pelo Google coleta métricas do Prometheus que podem ser visualizadas usando o Metrics Explorer. As métricas coletadas dependem da instrumentação do app, embora o Collector criado pelo Google também grave algumas autométricas.
Para conferir as métricas coletadas pelo coletor do OpenTelemetry criado pelo Google, faça o seguinte:-
No console Google Cloud , acesse a página do leaderboard Metrics explorer:
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Monitoring.
- Na barra de ferramentas do console Google Cloud , selecione seu projeto Google Cloud . Para configurações do App Hub, selecione o projeto host do App Hub ou o projeto de gerenciamento da pasta habilitada para apps.
- No elemento Metric, expanda o menu Selecionar uma métrica,
digite
Prometheus Targetna barra de filtro e use os submenus para selecionar um tipo de recurso e métrica específicos:- No menu Active resources, selecione Prometheus Target.
- Para selecionar uma métrica, use os menus Categorias de métricas ativas e Métricas ativas.
As métricas coletadas pelo coletor do OpenTelemetry criado pelo Google têm o prefixo
prometheus.googleapis.com. - Clique em Aplicar.
Para adicionar filtros que removem séries temporais dos resultados da consulta, use o elemento Filtro.
- Configure a visualização dos dados.
Quando as medições de uma métrica são cumulativas, o Metrics Explorer normaliza automaticamente os dados medidos pelo período de alinhamento, o que resulta na exibição de uma taxa no gráfico. Para mais informações, consulte Tipos, tipos e conversões.
Quando valores inteiros ou duplos são medidos, como acontece com as métricas
counter, o Metrics Explorer soma automaticamente todas as série temporal. Para mudar esse comportamento, defina o primeiro menu da entrada Agregação como Nenhum.Para mais informações sobre como configurar um gráfico, consulte Selecionar métricas ao usar o Metrics Explorer.
Visualizar os rastros
Para visualizar os dados de trace, faça o seguinte:
-
No console Google Cloud , 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.
- Na barra de ferramentas do console Google Cloud , selecione seu projeto Google Cloud . Para configurações do App Hub, selecione o projeto host ou de gerenciamento do App Hub.
- Na seção de tabela da página, selecione uma linha.
No diagrama de Gantt no painel Detalhes do trace, selecione um período.
Um painel é aberto com informações sobre a solicitação rastreada. Esses detalhes incluem o método, o código de status, o número de bytes e o user agent do autor da chamada.
Para visualizar os registros associados a esse trace, selecione a guia Registros e eventos.
A guia mostra registros individuais. Para exibir os detalhes da entrada de registro, expanda a entrada de registro. Também é possível clicar em Ver registros e ver o registro usando a Análise de registros.
Para mais informações sobre como usar o explorador do Cloud Trace, consulte Encontrar e explorar traces.
Acessar os registros
Na Análise de registros, é possível inspecionar os registros e visualizar os traces associados, quando eles existirem.
-
No console do Google Cloud , acesse a página Análise de registros:
Acessar a Análise de registros
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Logging.
Localize uma entrada de registro do app instrumentado. Para conferir os detalhes, expanda a entrada.
Clique em
Traces em uma entrada de registro com uma mensagem de
trace e selecione View trace details.O painel Detalhes do trace é aberto e mostra o trace selecionado.
Para mais informações sobre como usar a Análise de registros, consulte Ver registros usando a Análise de registros.
Observar e depurar o coletor
O Coletor do OpenTelemetry criado pelo Google fornece automaticamente métricas de auto-observabilidade para ajudar você a monitorar o desempenho e garantir o tempo de atividade contínuo do pipeline de ingestão do OTLP.
Para monitorar o Coletor, instale o painel de amostra dele. Esse painel do Google Analytics oferece insights gerais sobre várias métricas do Coletor, incluindo tempo de atividade, uso de memória e chamadas de API para a observabilidade do Google Cloud.
Para instalar o painel, faça o seguinte:
-
No console Google Cloud , acesse a página Painéis:
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Monitoring.
- Clique em Modelos de painel.
- Pesquise o painel OpenTelemetry Collector.
- Opcional: para visualizar o painel, selecione-o.
Clique em playlist_add Adicionar painel à sua lista e preencha a caixa de diálogo.
Na caixa de diálogo, selecione o nome do painel e adicione rótulos a ele.
Para mais informações sobre como instalar painéis, consulte Instalar um modelo de painel.