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
-
Em uma conta administrativa no GitHub Enterprise Server, no canto superior direito de qualquer página, clique em .
-
Se você ainda não estiver na página "Administração do site", no canto superior esquerdo, clique em Administração do site.
-
Na barra lateral " Site admin", clique em Console de Gerenciamento.
-
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
-
Em uma conta administrativa no GitHub Enterprise Server, no canto superior direito de qualquer página, clique em .
-
Se você ainda não estiver na página "Administração do site", no canto superior esquerdo, clique em Administração do site.
-
Na barra lateral " Site admin", clique em Console de Gerenciamento.
-
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
- Para habilitar painéis de monitoramento avançados, consulte Painéis avançados de métricas do OpenTelemetry
- Explorando as métricas do OpenTelemetry, consulte Usando o Grafana para analisar as métricas do OpenTelemetry.
- Para configurar o monitoramento externo, consulte Configurando o monitoramento externo com o OpenTelemetry.