前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >记一个诡异问题的分析步骤

记一个诡异问题的分析步骤

作者头像
明明如月学长
发布2021-08-31 15:18:25
5450
发布2021-08-31 15:18:25
举报
文章被收录于专栏:明明如月的技术专栏

1、问题描述

开发一个新的HTTP接口,往前端写一个CSV文件。

代码怎么看都没问题,换了好几种写法都不行,怎么看都觉得代码没问题。

在代码里打断点,远程调试,代码可以进来,而且没有报错,但是文件没有下载成功。

2、尝试的解决步骤

2.1 尝试换浏览器

之前用的是谷歌,改用火狐浏览器,发现一样的效果。

2.2 尝试换一种写法

尝试直接用PrintWriter写,用RepondsEntity等都不行。

2.3 查看日志

日志一切正常

2.4 换个电脑在新的项目中写demo代码

发现几乎一样的代码,新的电脑本地的代码中可以正常下载。

3、排查到的原因

最终发现由于测试环境需要使用请求头插件加入一个特殊的参数才可以转到自己分支的机器上。

发起HTTP请求初期是通过请求头插件添加了一个请求头,导致代码可以正常调用特定的分支。

然后谷歌浏览器自动启动下载工具,这时插件设置的请求头没有带上,导致404。

然后换用火狐浏览器的时候,没有安装这个插件,然后再火狐上调试的时候发现代码没进来,突然想到会不会是火狐没有下载请求头插件设置请求头?

安装后设置,由于火狐浏览器没有自动关联某个下载工具,直接浏览器下载,发现下载成功。

4、诡异问题的排查步骤总结

4.1 review代码

review代码避免一些粗心等导致一些不必要的错误。

4.2 远程debug

远程debug有助于看代码是否被调用,参数,返回值以及中间过程是否有问题。

4.3 看日志

看日志有没有报错,方法有没有调到,返回值对不对。

4.4 控制变量法

比如同样的代码在不同电脑上看效果;

比如小范围改代码看看效果;

比如如果以前的代码正确,则查看修改了啥,逐步删除对比等。

4.5 搜索引擎大法

看看这种情况该怎么写;

这种错误一般什么原因等等。

4.6 寻求帮助

有可能其他人有类似的问题,如果很幸运其他人知道,给你一个正确的方向,则可能节省很多时间。

最终的一个整体的经验是,要先分析,而不是急于修改!!!

如果觉得本文对你有帮助,欢迎点赞,欢迎关注我,如果有补充欢迎评论交流,我将努力创作更多更好的文章。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/05/18 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、问题描述
  • 2、尝试的解决步骤
    • 2.1 尝试换浏览器
    • 2.2 尝试换一种写法
    • 2.3 查看日志
    • 2.4 换个电脑在新的项目中写demo代码
    • 3、排查到的原因
    • 4、诡异问题的排查步骤总结
      • 4.1 review代码
        • 4.2 远程debug
          • 4.3 看日志
          • 4.4 控制变量法
            • 4.5 搜索引擎大法
              • 4.6 寻求帮助
              相关产品与服务
              远程调试
              远程调试(Remote Debugging,RD)在云端为用户提供上千台真实手机/定制机/模拟器设备,快速实现随时随地测试。运用云测技术对测试方式、操作体验进行了优化,具备多样性的测试能力,包括随时截图和记录调试日志,稳定的支持自动化测试, 设备灵活调度,用例高效执行, 快速定位产品功能和兼容性问题。云手机帮助应用、移动游戏快速发现和解决问题,节省百万硬件费用,加速敏捷研发流程。
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档