线上问题的解决思路
来源:互联网 发布:php是什么意思在奶粉中 编辑:程序博客网 时间:2024/03/29 00:31
上周接了一个任务,处理线上的一个bug,看似简单的问题,如何快速的定位解决是很考验人的时刻。线上问题如下:
线上大部分的数据是没有问题的,只有这一组数据出现了问题,so,问题的关键就在于如何定位了,接下来便是深入基层,从页面开始查看调用了那个方法,之后进入业务端代码,真正的大戏开始了,如果是新手对业务和代码都不熟悉,这会是一个很煎熬的时刻(自己就是这样的……)。所以你就必须一条一条业务去跟,一个一个接口去看,之后就是根据接口查找正真的数据来源来自哪个库表,循环往复,一遍遍地跟踪才可能对新的业务和数据有所了解。如果够幸运的话在这个过程中便可以发现和解决一些小的问题,但是碰到一些古怪的bug还是需要很深的内功的,那就需要另辟蹊径了。
从表面现象来看的话是页面数据加载出错,但是具体什么错误我们不知道,这是我们可以将详细的错误信息打印出来,以便定位问题出在哪里,例如自己的XMLHttpReq.status值为500,所以可以确定问题出现在业务端。
当然这个的前提是可以在开发环境模拟线上环境来进行这些工作,这当中模拟线上环境,模拟线上的数据就是非常非常重要的一关,需要多业务熟悉、还有就是每一个业务会涉及到那些数据,才可以完整复现线上的问题,这个过程只能慢慢修炼了,当开发环境的数据都模拟完毕之后,打印XMLHttpReq
的信息便可以初步确定错误来自前段页面还是业务端代码,当然我们也可以从其他页面的返回值来确定是不是页面有错误,但是打印XMLHttpReq
的信息毕竟是很专业的方法。如果确认前端没有问题,再接下里就是一步步去业务端跟代码了,业务端的问题也是千奇百怪,但是如果可以到了能够针对问题单步调试的程度,最终肯定能够定位问题的所在。
以上就是自己调试线上问题的一些思路和经验,这个过程中经历了很大的时间压力还有上司压力,这种压力会给自己解决问题带来负面的影响,但是我们能做的就是把“鸭梨”放进冰箱里,变成“冻梨”……如果日志写的比较好的话,线上问题很多时候也可以通过日志来定位,所以还需要结合具体的情况来定位问题,后期自己也会介绍一下线上日志定位问题的一些思路和步骤,尽请期待!
- 线上问题的解决思路
- 解决线上问题的办法
- 解决线上问题办法
- 解决复杂问题的思路
- 线上PHP问题排查思路与实践
- 线上问题排查-思路小分享
- 线上PHP问题排查思路与实践
- 线上项目更新新包后解决新增数据产生的Bugs的思路
- 求解决线下与线上的问题咋回事?
- 关于解决python线上问题的几种有效技术
- 解决i18n的问题有三种经典思路
- ajax页面刷新问题的解决思路
- 粘包问题的解决思路
- Lowest Common Ancestor问题的解决思路
- 解决执行力问题的思路
- 解决执行力问题的思路
- 解决执行力问题的思路
- 解决技术问题的通用思路
- C++模板
- 最大连续子序列 HDU
- 【问题收录】Ubuntu14.04出现循环登录无法进入图形界面的问题
- MongoDb安装教程
- 图的最小生成树prim算法总结
- 线上问题的解决思路
- openresty解析php
- 教程:提取macOS应用图标
- 数据驱动决策的13种思维方式
- C#读取Esri Grid删格文件的的办法
- 字符设备驱动程序----概念分析
- gradle 分包管理layout
- 谈谈23种设计模式在Android源码及项目中的应用
- iOS开发中,出现libxml/parser.h not found