跳到主要内容
版本:3.10.x

优化遥测数据传输

数据面(DP)定期向控制面(CP)上报运行指标,用于集中监控、告警和控制台可视化。遥测数据采用 prometheus 格式,包括 API 流量、请求延迟、HTTP 状态码、带宽和连接数。

默认情况下,DP 会启用 Gzip 压缩,并每 15 秒上报一次遥测数据。本指南介绍如何配置遥测、调整压缩级别,以及在必要时禁用遥测。

遥测配置

在数据面的 config.yaml 中配置遥测设置:

conf/config.yaml
api7ee:
telemetry:
# 是否启用向控制面上报遥测数据
enable: true

# 遥测数据上报间隔(秒)
interval: 15

# 每次上报的指标数据最大大小(字节,默认为 32 MB)
max_metrics_size: 33554432

# 压缩前的最大批量大小(字节,默认为 4 MB)
metrics_batch_size: 4194304

# Gzip 压缩级别(-1 表示库默认值,0 表示不压缩,1-9)
compression_level: -1

压缩级别

Gzip 压缩减少了遥测传输的网络开销。压缩级别控制 CPU 使用率和数据大小之间的权衡:

级别描述特点
-1使用库的默认值通常为 6 级,在 CPU 开销与压缩率之间取得平衡。
0不压缩无压缩 CPU 开销,传输数据量最大。
1最快压缩CPU 使用率最低,压缩率也最低。
6均衡压缩在 CPU 使用率与压缩率之间取得较好平衡。
9最大压缩压缩率最高,CPU 使用率也最高。

性能比较

下表显示包含 3600 个路由的测试环境中的示例结果:

指标1 级6 级9 级
原始大小7.71 MB6.60 MB6.45 MB
压缩后大小0.22 MB0.16 MB0.12 MB
压缩率97.10%97.54%97.98%
DP CPU 使用率17.39%21.57%29.61%

对于大多数部署,默认级别(-1,通常为 6)提供了良好的平衡。如果 CPU 资源受限,请考虑级别 1;如果带宽有限,请考虑级别 9。

禁用遥测

要禁用从 DP 到 CP 的遥测数据传输,请将 enable 设置为 false

conf/config.yaml
api7ee:
telemetry:
enable: false

重新启动或重新加载网关以使更改生效。

禁用遥测的影响

禁用遥测会对运营产生重大影响:

影响详情
可观测性丢失控制面将不再接收性能指标。监控仪表板和告警系统将无法运行。
运维能力受限团队无法再通过集中式指标评估服务健康状况、规划容量和排查问题。
合规风险可能无法满足有关系统监控和审计的行业合规要求。

仅在特殊情况下禁用遥测,例如隔离的调试环境。

备注

该遥测仅是内部 DP 到 CP 通信。API7 网关不会向外部服务发送匿名使用数据或“回拨”。

其他资源