写点什么

自我管理系列 - 为啥要做生产问题分析报告呀

用户头像
罗小龙
关注
发布于: 2020 年 10 月 28 日
自我管理系列-为啥要做生产问题分析报告呀

凭实力犯的生产问题,为什么还要登记下来,让自己去“回味”吗?登记就算了,还得做分析?唉呀妈呀,到底烦不烦啊,程序修好,系统能用不就可以了吗?写文档就算了,还得按模板来写?写文档有啥意思啊,我手上需求还很多耶,写文档影响开发效率啊!——某程序猿 A:这话我可没说过哦!

      很多做开发的小盘友,对于写文档都是深通恶绝的,特别是写生产问题分析报告时,更是深通恶绝中的深通恶绝,简直脸都要拧成一个干苦瓜了。啊,为什么我会知道?先提前说清楚哈,我可没有放乱放摄像头监控你们的生活啊,那是因为,我也曾是一!枚!程!序!猿!

         记得第一次写生产问题分析报告的时候,我的心情特别冤枉。为什么呢?因为问题的种子可不是我种下去的,是我的前任轻轻地走了,不带走一片云彩,却无心插柳柳成荫地埋下了这个伏笔。没办法,谁叫我那时候倒霉上了呢,前人挖坑后人填坑这不是天经地义的事情么(误),写就写吧!正想问领导这个报告怎样写的时候,领导一脸不太爽地甩了一个邮件过来,里面是一份报告样例!我僵住了 0.0001 秒后,瞬间了解领导的意图,马上乖乖拉上嘴巴的链条,郁闷地打开了样例。样例是一份颇为标准的模板,相信是经过相当一段时间的实践总结出来的成果了,里面分了几个大模块,分别是“问题描述”,“根因分析”,“临时方案”,“长期方案”,“负责人”,“处理日期”,“风险登记”。感觉上面每个字我都熟悉得不得了,但是拼在一起为啥感觉就那么的陌生呢?不过这是领导压下来的政治任务啊,尽管想不屈服于淫威之下拍桌子振臂高呼,但是看看口袋了空洞无物的钱包君,一腔热血瞬间就冰冷下来了。人穷被人欺,恩!此时此刻,我的脸孔肯定也是干苦瓜般的,心里千万匹草泥马奔腾的局面,简直是深通恶绝中的深通恶绝呀。平服心情之后,我把鼠标放在模板上,先思考一下分析报告到底要怎样写才不容易再碰上枪头。模板上核心的几个模块到底是啥子意思呢,先解释给各位看官:

        1)问题描述:简要描述生产问题的表象特征,虽然不用写成 5W2H 国际标准版本,但至少能让小白看得懂对不对。比如一个 ETL 作业执行报错了,的确可以写成“XXXETL 作业报错”敷衍了事。但作业报错出现后,后台日志登记的错误是什么,不写清楚的话,以后复盘时就不一定了解来龙去脉了呀,毕竟时间是遗忘的良药呢!

        2)根因分析:根因分析与问题原因是两个本质不同的玩意。问题原因只需要找出发生的原因即可,比如 ETL 作业报错的原因是里面有一段 drop table 的代码没有执行,导致后面建表时报错而异常退出。那么解决问题的思路就很清晰了,drop table 后再重新执行不就完了吗。恩,是的,真的完了,不是说问题完了,是你完了。为什么?到底是什么原因造成 drop table 不成功的,这个根本的原因还没挖出来呢!的确如此处理后可能后续几天程序又正常运行了,结果几天过后又出问题了,而且还是 drop table 失败引发的问题,相信这个时候领导更加不会给你好脸色了。长痛不如短痛,要是当初肯花心思找出根本原因并且解决的话,何必又多踩一次坑呢?

       言归正传,根因分析就是挖掘问题的根本原因,比如上述的 drop table 失败问题,究其原因,是因为该数据库版本执行 drop table 就是有低概率失败的可能,所以才会偶尔发生问题。清楚了问题根因之后,要解决起来就是如同吃饭睡觉般简单了(误)!当然,生产系统的数据库版本可不能随意更迭的,就如同向正在飞行的飞机上换引擎一样危险,但是可以做一个小小的容错性措施,比如使用 while 循环判断 table 是否删除,若未删除则再次执行 drop table。事实上,连续失败的概率还是蛮低的,说明数学家发明的概率论还是很准确的。而自从做了这个容错性措施之后,程序再也不会报同样的问题了,这不就解决了吗?

         其实,通过分析问题根因,临时方案和长期方案已经同时找出来了,你发现了吗?

         3)临时方案:就是生产问题的暂时性解决方法,这类方法都是头痛医头脚痛医脚的,用于缓缓燃眉之急而已,万不可作为一劳永逸的解决方案哦!

         4)长期方案:就是通过根因分析找到问题的根本原因后,采取的真正一劳永逸的解决方案。当然,处理问题的方法有很多,除了修补漏洞之外,还可以放任漏洞不管,只不过要加上容错性措施保证漏洞自动解决即可。

         5)风险登记:假如解决生产问题存在某些风险且无法解决的话,一定要先自爆哭惨,等领导“帮”你解决。这个跟项目上遇到的风险处理方法是一样,你可以不自爆,但是等到炸弹长大之后再爆炸的话,肯定是吃不了兜着走的。

        最后,花费了我宝贵的 1.5 小时之后,终于把生产问题分析报告给写出来了,检查一遍没问题之后就交给领导交差了,心里乐滋滋的。为啥是乐滋滋的?既完成领导的差事,又发现打开了一枚新世界的大门(误),不香吗?

        奇怪的是,自从我坚持写生产问题分析报告之后,我发现遇到的生产问题越来越少了,跟领导汇报的时候也变得越来越有条理。正在看文章的你,要不要跟着我试试看?


发布于: 2020 年 10 月 28 日阅读数: 61
用户头像

罗小龙

关注

镜花水月 2020.08.18 加入

数据工作者,目前就职于商业银行数据部门,擅长数据架构、数据建模、数据开发及数据分析

评论

发布
暂无评论
自我管理系列-为啥要做生产问题分析报告呀