Las métricas de OpenTelemetry son la base futura para la supervisión, disponibles a partir de GitHub Enterprise Server 3.18 en adelante. Esta nueva stack de monitoreo proporciona capacidades mejoradas de observabilidad y administración en comparación con el sistema collectd heredado.
Las métricas recopiladas se siguen recopilando de forma predeterminada y siguen siendo totalmente compatibles en esta versión.
Nota:
Las métricas de OpenTelemetry se encuentran en versión preliminar pública y están sujetas a cambios. Nos encantaría escuchar sus comentarios sobre la versión preliminar. Puede compartirlo con el equipo de éxito del cliente o dejar un comentario en la publicación de discusión de la comunidad.
Prerrequisitos
- GitHub Enterprise Server 3.18 o posterior
- Acceso administrativo a Consola de administración
- Acceso de SSH al dispositivo de GitHub Enterprise Server
Habilitación de métricas de OpenTelemetry
Las métricas de OpenTelemetry están deshabilitadas de forma predeterminada. Puede habilitarlos a través de Consola de administración o la línea de comandos.
Uso de la Consola de administración
-
Desde una cuenta administrativa de GitHub Enterprise Server, en la esquina superior derecha de cualquier página, haz clic en .
-
Si todavía no está en la página "Administrador del sitio", en la esquina superior izquierda, haga clic en Administrador del sitio.
-
En la barra lateral " Site admin", haz clic en Consola de administración.
-
En la configuración de supervisión, seleccione Habilitar OpenTelemetry.
-
En la barra lateral "Configuración" , haga clic en Guardar configuración.
Nota:
Al guardar la configuración en Consola de administración se restablecen los servicios del sistema, lo que podría generar un tiempo de inactividad visible para el usuario.
-
Espera que se complete la fase de configuración.
Uso de la línea de comandos
-
SSH en tu instancia de GitHub Enterprise Server Si la instancia consta de varios nodos, por ejemplo, si la alta disponibilidad o la replicación geográfica están configuradas, utiliza SSH en el nodo principal. Si usas un clúster, puedes utilizar SSH en cualquier nodo. Reemplace HOSTNAME por el nombre de host de la instancia, o el nombre de host o la dirección IP de un nodo. Para más información, consulta Acceder al shell administrativo (SSH).
Shell ssh -p 122 admin@HOSTNAME
ssh -p 122 admin@HOSTNAME -
Ejecute el siguiente comando para habilitar las métricas de OpenTelemetry.
ghe-config observability.metrics.next-enabled true -
Para aplicar la configuración, ejecuta el siguiente comando.
Nota:
Durante la ejecución de una configuración, los servicios de tu instancia de GitHub Enterprise Server pueden reiniciarse, y esto puede provocar un breve tiempo de inactividad para los usuarios.
Shell ghe-config-apply
ghe-config-apply -
Espera que se complete la fase de configuración.
Consideraciones sobre el rendimiento
Al configurar las métricas de OpenTelemetry, tenga en cuenta los siguientes factores de rendimiento:
- Frecuencia de recopilación: una recopilación más frecuente aumenta la carga del sistema.
- Retención de datos: períodos de retención más largos requieren más almacenamiento
- Exportadores personalizados: los exportadores adicionales pueden aumentar el uso de CPU y memoria.
- Ancho de banda de red: el envío externo de métricas afecta al uso de la red
Configuración de la recopilación de métricas
Después de habilitar las métricas de OpenTelemetry, puede personalizar varios aspectos del proceso de recopilación de métricas.
Establecimiento de intervalos de recopilación
El intervalo de recopilación de métricas predeterminado es de 30 segundos. Puede ajustarlo en función de sus necesidades de supervisión.
Importante
Establecer intervalos más cortos aumenta la precisión de las métricas, pero también aumenta los requisitos de almacenamiento y la carga del sistema. Tenga en cuenta los recursos del sistema y los requisitos de supervisión antes de ajustar esta configuración.
Uso de la Consola de administración para establecer intervalos
-
Desde una cuenta administrativa de GitHub Enterprise Server, en la esquina superior derecha de cualquier página, haz clic en .
-
Si todavía no está en la página "Administrador del sitio", en la esquina superior izquierda, haga clic en Administrador del sitio.
-
En la barra lateral " Site admin", haz clic en Consola de administración.
-
En la configuración de supervisión, en Intervalo de extracción de métricas, escriba el intervalo deseado en segundos (por ejemplo,
60). -
En la barra lateral "Configuración" , haga clic en Guardar configuración.
Nota:
Al guardar la configuración en Consola de administración se restablecen los servicios del sistema, lo que podría generar un tiempo de inactividad visible para el usuario.
-
Espera que se complete la fase de configuración.
Uso de la línea de comandos para establecer intervalos
Conéctese mediante SSH en el dispositivo de GitHub Enterprise Server y ejecute los siguientes comandos:
# Set scrape interval to 60 seconds
ghe-config observability.metrics.interval 60
ghe-config-apply
Configuración de la retención de datos
De forma predeterminada, los datos de métricas se conservan durante 30 días. Puede modificar esta configuración utilizando Consola de administración o la línea de comandos.
Uso de la Consola de administración para configurar la retención
-
Desde una cuenta administrativa de GitHub Enterprise Server, en la esquina superior derecha de cualquier página, haz clic en .
-
Si todavía no está en la página "Administrador del sitio", en la esquina superior izquierda, haga clic en Administrador del sitio.
-
En la barra lateral " Site admin", haz clic en Consola de administración.
-
En la configuración de supervisión, en Retención de métricas, escriba el período de retención deseado en días (por ejemplo,
15). -
En la barra lateral "Configuración" , haga clic en Guardar configuración.
Nota:
Al guardar la configuración en Consola de administración se restablecen los servicios del sistema, lo que podría generar un tiempo de inactividad visible para el usuario.
-
Espera que se complete la fase de configuración.
Uso de la línea de comandos para configurar la retención
Conéctese mediante SSH en el dispositivo de GitHub Enterprise Server y ejecute los siguientes comandos:
# Set retention to 15 days
ghe-config observability.metrics.retention 15
ghe-config-apply
Configuración del nivel de verbosidad para la telemetría interna
El recopilador de OpenTelemetry genera sus propios datos de telemetría internos para supervisar el estado y el rendimiento del propio recopilador. Puede configurar el nivel de detalle de esta telemetría interna mediante la línea de comandos.
Los niveles de telemetría disponibles son:
none: deshabilita la telemetría interna.basic: proporciona datos de telemetría esenciales (valor predeterminado)normal: proporciona datos de telemetría estándar.detailed: proporciona datos detallados de telemetría para la depuración.
Conéctese mediante SSH en el dispositivo de GitHub Enterprise Server y ejecute los siguientes comandos:
# Set internal telemetry level to normal
ghe-config observability.metrics.internal-otel-telemetry-level normal
ghe-config-apply
Nota:
Los niveles de telemetría más altos proporcionan información más detallada sobre las operaciones internas del recopilador, pero también aumentan el uso de recursos. El nivel basic se recomienda para entornos de producción a menos que necesite solucionar problemas del recopilador.
Solución de problemas de configuración
Si tiene problemas con la configuración de OpenTelemetry, la siguiente información puede ayudarle a identificar y resolver problemas comunes.
Problemas comunes de configuración
- Errores de inicio del servicio: comprobación de los registros del sistema de mensajes de error
- Restricciones de recursos: supervisar los recursos del sistema al ajustar los intervalos de recopilación
Visualización de registros locales
SSH al nodo que desea depurar y ejecute los siguientes comandos:
Vea los registros del recopilador de OpenTelemetry:
sudo journalctl -u otelcol-contrib -f
Ver los registros de VictoriaMetrics:
sudo journalctl -u victoriametrics -f
Pasos siguientes
- Para habilitar paneles de supervisión avanzados, consulte AUTOTITLE.
- Exploración de las métricas de OpenTelemetry, consulte Uso de Grafana para analizar métricas de OpenTelemetry.
- Para configurar la supervisión externa, consulte Configuración de la supervisión externa con OpenTelemetry.