OpenTelemetry 指标将成为监控的未来基础,并将在 GitHub Enterprise Server 3.18 及更高版本中提供。 与旧收集的系统相比,这种新的监视堆栈提供了增强的可观测性和管理功能。
默认情况下,指标将继续被收集,并且在此版本中仍然完全受支持。
关于 OpenTelemetry 指标
OpenTelemetry 监视堆栈基于行业标准可观测性工具,包括用于收集、处理和存储指标的各种组件。 此综合方法提供 GitHub Enterprise Server 实例的所有组件中系统性能和运行状况的完整视图。
OpenTelemetry 指标的优点
OpenTelemetry 指标比旧收集的系统具有多种优势:
- 行业标准:基于广泛采用的 OpenTelemetry 和 Prometheus 标准
- 可缩放存储:VictoriaMetrics 提供高效的时序数据存储
- 丰富的可视化效果:Grafana 提供高级仪表板和警报功能
- 可扩展:支持自定义指标和外部监视集成
- 原生终结点:与服务
/metrics终结点直接集成,实现高效监视
借助 OpenTelemetry,具有增强的可视化和监视功能的高级 Grafana 仪表板可用,请参阅: OpenTelemetry 高级指标仪表板。
关键组件
OpenTelemetry 监视堆栈包含以下组件:
- OpenTelemetry 收集器:接收、处理和导出遥测数据,充当从各种源收集指标的中心中心
- VictoriaMetrics:一款快速、高效且可扩展的时序数据库,用于存储从您的 GitHub Enterprise Server 实例收集的所有指标。
- Grafana:为时序数据提供强大的可视化功能,使你可以创建、浏览和共享仪表板
- 导出程序:从特定服务收集指标的专用组件,包括:
- 节点导出程序:系统级指标,包括 CPU、内存、磁盘和网络统计信息
- 进程导出程序:详细的进程级指标和资源利用率
- StatsD 导出程序:由 GitHub 组件使用 StatsD 协议公开应用程序级指标
- HAProxy 导出程序:前端、群集和数据层的负载均衡器指标
- Nomad 导出器:任务调度器和资源分配指标(本机 Nomad
/v1/metrics端点) - MySQL 导出程序:数据库性能和查询指标(启用 MySQL 时)
- Elasticsearch 导出程序:搜索引擎性能和索引指标(启用 Elasticsearch 时)
- Redis 导出程序:缓存性能和内存使用情况指标(启用 Redis 时)
- Memcached 导出程序:缓存命中率和内存统计信息(启用 Memcached 时)
- MinIO 导出程序:对象存储集群指标准则(启用 MinIO 时的本地 MinIO
/minio/v2/metrics/cluster端点) - Nginx 导出程序:Web 服务器性能和请求指标(启用 Nginx 时)
- SQL 导出程序:Microsoft SQL Server指标(启用SQL Server时)
- 黑盒导出程序:网络探测和连接指标(在群集部署中)
- 自定义指标服务:其他 GitHub特定的服务,用于将 OpenTelemetry 指标直接推送到收集器,包括:
- Resque指标:后台作业处理和队列指标
- Postfix 指标:电子邮件传递和邮件服务器性能指标
- 侦听器统计信息指标:连接和请求处理统计信息
- WireGuard 指标:VPN 隧道和网络加密指标
后续步骤
- 若要启用和配置 OpenTelemetry 指标,请参阅 为实例配置 OpenTelemetry。
- 若要设置外部监视,请参阅 使用 OpenTelemetry 设置外部监视。