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.

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 habilitadas por padrão para novas instalações do GitHub Enterprise Server 3.19 e posteriores. Atualizações para GitHub Enterprise Server 3.19 ainda terão collectd métricas habilitadas por padrão, mas é possível optar por alternar para métricas OpenTelemetry.

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