上线checklist清单 | ||||
---|---|---|---|---|
分类 | 检查点 | 检查人 | 是否通过 | 说明 |
代码 | 是否经过代码工具检查,严重问题已全部修正(idea工具推荐:SonarLint; Alibaba Java Coding Guidelines) | 是 | ||
是否经过代码Review,相关问题是否已全部修正 | 是 | |||
因表结构变动、字段新加枚举值、上下游接口变动而增加的枚举值是否在枚举类型中增加,代码逻辑是否已更新 | 是 | 不涉及 | ||
是否对关键代码配置了监控,例如对外提供的接口、worker方法、核心业务方法、 | 是 | 初次上线,待上线后配置 | ||
调用的其他系统接口配置监控,对外提供的重要接口配置URL存活监控,重要异常做自定义监控 | ||||
上线代码是否已合并到主干 | 是 | |||
是否有考虑方法的边界条件(空、null、数组越界、else语句等) | 是 | |||
新版本上线是否会对线上产生影响(如增减字段带来的数据序列化问题或者数据转换问题或者redis返回值调整后数据兼容等) | 是 | |||
是否存在有效的开关、降级、回滚或托底方案 | 是 | |||
代码是否存在多层循环调用,多层循环调用使用是否合理(调用顺序,是否可简化等) | 是 | |||
是否有统一异常处理 | 是 | |||
是否存在大对象的数据转换或日志打印 | 是 | |||
是否存在连接资源(DB、接口等)释放问题 | 是 | |||
正式代码中是否包含测试数据或测试代码 | 是 | |||
是否存在线程安全问题 | 是 | |||
配置文件 | 代码中配置项是否已更新 | 是 | ||
用于覆盖的全局配置文件是否已更新 | 是 | 线上由运维处理 | ||
线上log4j2是否配置正确(是否写入file、路径、日志级别),是否已关闭console输出 | 是 | |||
数据库 | 确认建表SQL、新加字段SQL、索引是否已经在线上数据库执行 | 是 | 不涉及 | |
是否完成数据初始化工作,是否完成对测试数据的清理 | 是 | 不涉及 | ||
ZK配置中心 | 是否需要添加配置 | 是 | 不涉及 | |
如果是更新配置,需要记录原来的配置,以便进行回滚使用 | 是 | 不涉及 | ||
项目文件 | 依赖的jar是否已上传至maven私服上 | 是 | ||
关联系统 | 上下游接口的报文、配置是否有变动,是否对应做了处理 | 是 | 不涉及 | |
如果有下游接口的变动(接口地址、增减Topic、报文格式、Token变动),是否进行了通知并协调上线安排 | 是 | |||
测试 | 是否已完成自测 | 是 | ||
是否经过测试人员/其他人员测试,且是否已经收到测试报告 | 是 | |||
测试出的问题是否已全部修正 | 是 | |||
验证 | 是否有上线后验证方案 | 是 | ||
是否有现场验证方案,并通知到相关人员 | 是 | |||
上线干系人 | 是否已通知相关人员,比如产品经理、业务方、现场人员 | 是 | ||
上线后需要其他人员(运维、业务方、现场人员等)配合的工作和注意事项是否已进行协调通知 | 是 | |||
应急预案 | 是否有上线失败、验证失败的紧急处理方案 | 是 | ||
产品经理定义的主要节点(功能点) |
网友评论