OpenTelemetry 指标将成为监控的未来基础,并将在 GitHub Enterprise Server 3.18 及更高版本中提供。 与旧收集的系统相比,这种新的监视堆栈提供了增强的可观测性和管理功能。
默认情况下,指标将继续被收集,并且在此版本中仍然完全受支持。
先决条件
- GitHub Enterprise Server 3.18 或更高版本
- 对 管理控制台 的管理员访问权限
- 对 GitHub Enterprise Server 设备的 SSH 访问
启用 OpenTelemetry 指标
默认情况下,OpenTelemetry 指标在 GitHub Enterprise Server 3.19 及更高版本的 新安装 中启用。 升级到 GitHub Enterprise Server 3.19 会默认启用 collectd 指标,但你可以选择切换到 OpenTelemetry 指标。
性能注意事项
配置 OpenTelemetry 指标时,请考虑以下性能因素:
- 收集频率:更频繁的收集会增加系统负载
- 数据保留期:更长的保留期需要更多存储
- 自定义导出程序:其他导出程序可能会增加 CPU 和内存使用率
- 网络带宽:外部指标传送会影响网络使用情况
配置指标集合
启用 OpenTelemetry 指标后,可以自定义指标收集过程的各个方面。
设置收集间隔
默认指标收集间隔为 30 秒。 可以根据监视需求对此进行调整。
重要
设置较短的间隔会增加指标的精度,但也会增加存储要求和系统负载。 在调整此设置之前,请考虑系统资源和监视要求。
使用管理控制台来设置时间间隔
-
在 GitHub Enterprise Server 上的管理帐户中,在任一页面的右上角,单击“”。
-
如果你尚未在“站点管理员”页上,请在左上角单击“站点管理员”。1. 在“ 站点管理”边栏中,单击“管理控制台”****。
-
在监控设置的 指标采集间隔中,输入所需的间隔时间(以秒为单位,例如,
60)。 -
在“设置”边栏下,单击“保存设置”。
注意
保存 管理控制台 中的设置会重启系统服务,这可能会导致用户可察觉的停机时间。
-
等待配置运行完毕。
使用命令行设置间隔
使用 SSH 连接到GitHub Enterprise Server服务器设备并运行以下命令:
# Set scrape interval to 60 seconds
ghe-config observability.metrics.interval 60
ghe-config-apply
配置数据保留策略
默认情况下,指标数据将保留 30 天。 可以使用管理控制台或命令行修改此设置。
使用 管理控制台 管理保留策略
-
在 GitHub Enterprise Server 上的管理帐户中,在任一页面的右上角,单击“”。
-
如果你尚未在“站点管理员”页上,请在左上角单击“站点管理员”。1. 在“ 站点管理”边栏中,单击“管理控制台”****。
-
在监视设置中的 Metrics retention 下,输入所需的保留期(以天为单位)(例如,
15)。 -
在“设置”边栏下,单击“保存设置”。
注意
保存 管理控制台 中的设置会重启系统服务,这可能会导致用户可察觉的停机时间。
-
等待配置运行完毕。
使用命令行配置保留
使用 SSH 连接到GitHub Enterprise Server服务器设备并运行以下命令:
# Set retention to 15 days
ghe-config observability.metrics.retention 15
ghe-config-apply
为内部遥测配置详细级别
OpenTelemetry 收集器生成自己的内部遥测数据,用于监视收集器本身的运行状况和性能。 可以使用命令行配置此内部遥测的详细级别。
可用的遥测级别为:
none:禁用内部遥测basic:提供基本遥测数据(默认值)normal:提供标准遥测数据detailed:提供用于调试的详细遥测数据
使用 SSH 连接到GitHub Enterprise Server服务器设备并运行以下命令:
# Set internal telemetry level to normal
ghe-config observability.metrics.internal-otel-telemetry-level normal
ghe-config-apply
注意
更高的遥测级别提供有关收集器内部操作的更多详细信息,但也会增加资源使用量。 建议将 basic 级别用于生产环境,除非需要排查收集器问题。
排查配置问题
如果遇到 OpenTelemetry 配置问题,以下信息可帮助你识别和解决常见问题。
常见配置问题
- 服务启动失败:检查系统日志中是否有错误消息
- 资源约束:调整收集间隔时监视系统资源
查看本地日志
通过 SSH 连接到要调试的节点并运行以下命令:
查看 OpenTelemetry 收集器日志:
sudo journalctl -u otelcol-contrib -f
查看 VictoriaMetrics 日志:
sudo journalctl -u victoriametrics -f
后续步骤
- 若要启用高级监视仪表板,请参阅 OpenTelemetry 高级指标仪表板
- 浏览 OpenTelemetry 指标,请参阅 使用 Grafana 分析 OpenTelemetry 指标。
- 若要设置外部监视,请参阅 使用 OpenTelemetry 设置外部监视。