首页/开发/CI/CD 与发布速查/金丝雀自动分析(Automated Analysis)
发布策略60 条

金丝雀自动分析(Automated Analysis)

把放量判断自动化:定义指标查询与阈值,按间隔对比金丝雀与基线的错误率、延迟等;达标自动提权,超限自动中止并回滚。

CI/CD 与发布速查开发更新于 2026-10-13

金丝雀自动分析是什么

金丝雀自动分析把放量判断自动化:定义指标查询与阈值,按固定间隔对比金丝雀与基线的错误率、延迟等指标;达标自动晋级放量,超限自动中止并回滚。分析规则以代码形式与发布资源一起管理,每次分析的结论留存可追溯,替代人工盯盘。

基本信息

定义分析模板或发布资源中的指标规则
输入指标查询、阈值与连续失败次数
动作达标晋级、超限中止
审计每次分析结果留存可追溯
节奏按间隔多次分析,避免单次误判
通知晋级与中止都发出通知,团队知晓状态

分析要素

要素作用注意
查询从指标系统取金丝雀与基线数据指标要按版本打标
阈值定义成功与失败条件结合样本量设定
间隔两次分析之间的周期与指标延迟匹配
失败上限连续失败几次判定中止避免单点噪声误判

错误率判据

错误率判据
# 分析模板:按间隔评估错误率
metrics:
- name: error-rate
  interval: 1m
  successCondition: result < 0.01
  failureLimit: 3
  provider:
    prometheus:
      query: |
        sum(rate(http_requests_total{status=~"5.."}[1m]))
        / sum(rate(http_requests_total[1m]))

典型使用场景

  • 渐进放量:每个权重档位停留数分钟,分析达标后自动抬高权重
  • 自动中止:连续失败达到上限时中止并回退,缩短异常暴露
  • 无人值守时段:夜间发布用自动分析替代人工盯盘
  • 多指标组合:错误率、延迟与业务指标任一超限即触发动作
  • 复盘取证:分析结论与时间线自动留存,便于事后核对
自动分析依赖稳定指标与足够流量:两者不足时以人工评审为主,避免自动化误判引入风险。
分析间隔与失败上限相互配合:间隔短、上限低则灵敏但易误判,按服务调参。
自动回滚要带通知:变更静默消失会让团队不知道发生过发布事故。

易错点

  • 采样窗口与指标延迟不匹配:分析结论与真实状态错位
  • 自动回滚不带通知:变更静默消失,复盘时找不到触发记录
  • 查询口径含混:金丝雀与基线数据混合统计,分析结论失去意义
  • 阈值一刀切:不同服务共用同一套阈值,噪声大的服务频繁误中止

数据来源与参考

  • Argo Rollouts 文档《Analysis》
  • Flagger 文档《How it works》
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌