Skip to main content

Configurando o OpenTelemetry para sua instância

Saiba como configurar a coleção de métricas OpenTelemetry em sua instância GitHub Enterprise Server para monitoramento e observabilidade aprimorados.

As métricas OpenTelemetry são a base futura para monitoramento, disponíveis a partir do GitHub Enterprise Server 3.18 e versões posteriores. Essa nova pilha de monitoramento fornece capacidades de observabilidade e recursos de gerenciamento aprimorados em comparação com o sistema collectd legado.

As métricas coletadas continuam a ser coletadas por padrão e permanecem totalmente compatíveis nesta versão.

Observação

As métricas do OpenTelemetry estão em versão prévia pública, e sujeitas a alterações. Adoraríamos ouvir seus comentários sobre a prévia. Você pode compartilhá-lo com sua equipe de sucesso do cliente ou deixar um comentário no post de discussão da comunidade.

Pré-requisitos

  • GitHub Enterprise Server 3.18 ou posterior
  • Acesso administrativo ao Console de Gerenciamento
  • Acesso SSH ao dispositivo GitHub Enterprise Server

Habilitando métricas OpenTelemetry

As métricas openTelemetry são desabilitadas por padrão. É possível habilitá-los por meio da Console de Gerenciamento ou linha de comando.

Usando o Console de Gerenciamento

  1. Em uma conta administrativa no GitHub Enterprise Server, no canto superior direito de qualquer página, clique em .

  2. Se você ainda não estiver na página "Administração do site", no canto superior esquerdo, clique em Administração do site.

  3. Na barra lateral " Site admin", clique em Console de Gerenciamento.

  4. Nas configurações de monitoramento, selecione Habilitar OpenTelemetry.

Como usar a linha de comando

  1. Conecte-se via SSH ao sua instância do GitHub Enterprise Server. Se sua instância for composta por vários nós, por exemplo, se a alta disponibilidade ou a replicação geográfica estiver configurada, efetue SSH no nó primário. Se você usar um cluster, poderá efetuar SSH em qualquer nó. Substitua HOSTNAME pelo nome do host da instância ou pelo nome do host ou endereço IP de um nó. Para saber mais, confira Acessar o shell administrativo (SSH).

    Shell
    ssh -p 122 admin@HOSTNAME
    
  2. Execute o comando a seguir para habilitar as métricas do OpenTelemetry.

    ghe-config observability.metrics.next-enabled true
    
  3. Para aplicar a configuração, execute o comando a seguir.

    Observação

    Durante uma execução de configuração, os serviços do sua instância do GitHub Enterprise Server podem ser reiniciados, o que pode causar um breve tempo de inatividade para os usuários.

    Shell
    ghe-config-apply
    
  4. Aguarde a conclusão da execução de suas configurações.

Considerações sobre desempenho

Ao configurar as métricas do OpenTelemetry, considere os seguintes fatores de desempenho:

  •         **Frequência da coleção**: a coleta mais frequente aumenta a carga do sistema
    
  •         **Retenção de dados**: períodos de retenção mais longos exigem mais armazenamento
    
  •         **Exportadores personalizados**: exportadores adicionais podem aumentar o uso de CPU e memória
    
  •         **Largura de banda de** rede: o envio de métricas externas afeta o uso da rede
    

Configurando a coleção de métricas

Depois de habilitar as métricas do OpenTelemetry, você pode personalizar vários aspectos do processo de coleta de métricas.

Definindo intervalos de coleção

O intervalo de coleta de métricas padrão é de 30 segundos. Você pode ajustar isso com base em suas necessidades de monitoramento.

Importante

Definir intervalos mais curtos aumenta a precisão das métricas, mas também aumenta os requisitos de armazenamento e a carga do sistema. Considere os recursos do sistema e os requisitos de monitoramento antes de ajustar essa configuração.

Usando o Console de Gerenciamento para definir intervalos

  1. Em uma conta administrativa no GitHub Enterprise Server, no canto superior direito de qualquer página, clique em .

  2. Se você ainda não estiver na página "Administração do site", no canto superior esquerdo, clique em Administração do site.

  3. Na barra lateral " Site admin", clique em Console de Gerenciamento.

  4. Nas configurações de monitoramento, em intervalo de coleta de métricas, insira o intervalo desejado em segundos (por exemplo, 60).

Usando a linha de comando para definir intervalos

Acesse via SSH seu GitHub Enterprise Server appliance e execute os seguintes comandos:

# Set scrape interval to 60 seconds
ghe-config observability.metrics.interval 60
ghe-config-apply

Configurando a retenção de dados

Por padrão, os dados de métricas são mantidos por 30 dias. Você pode modificar essa configuração usando a Console de Gerenciamento ou a linha de comando.

Usando o Console de Gerenciamento para configurar a retenção

  1. Em uma conta administrativa no GitHub Enterprise Server, no canto superior direito de qualquer página, clique em .

  2. Se você ainda não estiver na página "Administração do site", no canto superior esquerdo, clique em Administração do site.

  3. Na barra lateral " Site admin", clique em Console de Gerenciamento.

  4. Nas configurações de monitoramento, em retenção de métricas, insira o período de retenção desejado em dias (por exemplo, 15).

Usando a linha de comando para configurar a retenção

Acesse via SSH seu GitHub Enterprise Server appliance e execute os seguintes comandos:

# Set retention to 15 days
ghe-config observability.metrics.retention 15
ghe-config-apply

Configurando o nível de verbosidade para telemetria interna

O coletor OpenTelemetry gera seus próprios dados de telemetria interna para monitorar a integridade e o desempenho do próprio coletor. Você pode configurar a verbosidade dessa telemetria interna usando a linha de comando.

Os níveis de telemetria disponíveis são: * none: desabilita a telemetria interna * basic: fornece dados de telemetria essenciais (padrão) * normal: fornece dados de telemetria padrão * detailed: fornece dados detalhados de telemetria para depuração

Acesse via SSH seu GitHub Enterprise Server appliance e execute os seguintes comandos:

# Set internal telemetry level to normal
ghe-config observability.metrics.internal-otel-telemetry-level normal
ghe-config-apply

Observação

Níveis mais altos de telemetria fornecem informações mais detalhadas sobre as operações internas do coletor, mas também aumentam o uso de recursos. O nível basic é recomendado para ambientes de produção, a menos que você precise solucionar problemas com o coletor.

Solução de problemas de configuração

Se você encontrar problemas com a configuração do OpenTelemetry, as informações a seguir poderão ajudá-lo a identificar e resolver problemas comuns.

Problemas comuns de configuração

  •         **Falhas de inicialização** do serviço: verificar os logs do sistema em busca de mensagens de erro
    
  •         **Restrições de recurso**: monitorar recursos do sistema ao ajustar intervalos de coleta
    

Exibindo logs locais

Conecte-se via SSH ao nó que você deseja depurar e execute os seguintes comandos:

Visualizar logs do coletor OpenTelemetry:

sudo journalctl -u otelcol-contrib -f

Exibir logs do VictoriaMetrics:

sudo journalctl -u victoriametrics -f

Próximas etapas