知识卡片

金丝雀测试的错误等级分类

普通读书笔记卡 · 1610

内容

金丝雀发布中的 Bug 可按危害程度分级:U=1 只是触发了某段逻辑错误的代码,出现频率与用户流量成 正比,最常见也最容易通过日志复现为回归测试;U=2 会随机损坏该用户未来请求要访问的数据,须按 顺序触发才能复现;U=3 连前序请求依赖的数据也会被损坏,因此几乎不可复现。指数型发布过程中能 估算出错误等级 U,就能判断问题的严重程度和是否值得继续放大流量。

参考来源

- 位置:《SRE:Google运维解密》第17章《测试可靠性》(源文件:_epub-src/OEBPS/Text/0009_0008.xhtml) - 结论依据:原文用 U=1/2/3 三级定义金丝雀测试中 Bug 的危害程度,说明大部分 Bug 是频率与流量 成线性正比、易复现的 U=1 级,而高阶 Bug 依赖前序请求顺序,一旦顺序被打乱就可能不再复现, 这决定了指数型发布策略必须重视对这类 Bug 的识别。 - 原始内容:“U=1:用户请求只是触发了某段逻辑错误的代码……U=2:用户的请求可能会随机损坏到 未来该用户可能会访问的数据……U=3:随机损坏的数据也包括前序请求需要使用的数据(意味着该 问题不可重现)。大部分的Bug都是U=1级别的:这些Bug的出现频率与用户流量成线性正比。”