v2.6.0 三大更新:兼容 Prometheus Remote Write 的指标接入、支持实时解析/脱敏/过滤的日志管道、链路追踪尾部采样,另修复若干稳定性问题,附升级步骤。
此前指标接入主要靠炬鲸自研采集器,存量 Prometheus 环境要迁移得改采集端。v2.6.0 原生支持 Prometheus Remote Write,Prometheus、VictoriaMetrics、Thanos 等直接把指标 push 过来,无需改造现有 exporter 和抓取配置。接入方式:在 Prometheus 配置里加一段 remote_write,指向炬鲸的接收端点并带上接入 Token:
remote_write:
- url: http://metrics.jjhub.cn:8428/api/v1/write
headers:
Authorization: Bearer <your-token>
write_relabel_configs:
- source_labels: [__name__]
regex: 'go_.*'
action: drop
write_relabel_configs 是可选的,用于在 push 前就把 go_* 这类无关指标丢掉,省带宽也省存储。迁移建议灰度:先让 Prometheus 双写(本地存储加 Remote Write)跑一周,对比两边指标值一致后再切干净。
之前日志解析靠采集端的静态规则,改规则要重启采集器。v2.6.0 引入实时管道,在数据入库前对日志流做实时处理,规则热更新、无需重启。管道由多个阶段串起来,每个阶段做一件事:
pipeline:
- stage: parse
type: json
- stage: mask
fields: [card_no, id_number]
method: regex
pattern: '\b\d{16,19}\b'
- stage: drop
match: "level == 'debug' and env == 'prod'"
第一段把 JSON 日志拆成字段,第二段对卡号、身份证号做正则脱敏,第三段把生产环境里 debug 级别的日志直接丢弃。管道支持 parse、mask、filter、drop、add_label 等阶段,常见的脱敏、过滤、打标签都能在入库前完成。对合规要求高的团队,脱敏在入库前做意味着明文根本不落盘,比入库后再查时脱敏更彻底。
头部采样按比例随机,会丢掉很多“事后才知道重要”的 trace——比如一个本来正常的请求,因为下游抖动变慢了。v2.6.0 支持尾部采样:先把全量 span 收进来,等 trace 结束后根据结果决定保留还是丢弃,可以配置错误 trace 全留、超过 2 秒的慢 trace 全留、其余按 10% 采样。这样既控制了存储成本,又不会漏掉关键慢请求和错误链路。尾部采样在 Collector 上以 tail_sampling processor 配置,需要少量缓冲空间,建议给 Collector 预留 1 到 2GB 内存。
本次共修复 17 个问题:修复 Remote Write 高基数指标导致的查询超时;修复日志管道在超大单条日志(大于 1MB)下的解析失败;修复尾部采样窗口在跨时区场景下的边界偏差。升级步骤:SaaS 用户已自动更新;私有化用户用 upgrade.sh 从 v2.5.x 升级,升级过程约 3 分钟,期间告警推送短暂中断。升级前备份告警规则和管道配置,升级后重点验证 Remote Write 端点和日志管道是否正常。完整变更清单见控制台「版本说明」。