前言
当线上环境出现bug,但阅读项目源码却无法发现问题时,你会怎么做呢?
1、代码前后增加日志,发布到线上后,模拟请求查看日志进行定位问题
2、本地debug启动服务,模拟请求debug分析代码
这两种方式各有利弊
第一种至少需要二次发布服务才能解决问题,遇到上线流程复杂的公司,简直就是戴上了痛苦面具
第二种需要准备一套和线上一样的环境,至少业务流程要走一遍,业务流程走一遍就意味着你要模拟线上环境发出多个curl才行
Proxy SwitchyOmega
在早期,有一种方式就是java程序开启调试端口,然后在本地连上该端口,即可达到debug效果,但是,这会直接阻塞住线上所有请求。
那么,如今有了一种变种的方式,就是利用代理工具!
1、安装
在google网上应用店中安装Proxy SwitchyOmega
2、配置代理
2.1 在配置界面上线配置一个本地代理,代理地址为本机的服务地址
image-20220630154243020
2.2 新建情景模式:自动切换模式
image-20220630154358265
2.3 添加自动切换规则
条件类型有三种:
image-20220630154502753
假设线上的地址是ip形式,并且前端的地址为:http://119.3.213.12/front, 后端的地址为:http://119.3.213.12:8080/api
那么配置为:
image-20220630154832859
这表示在访问匹配://119.3.213.12/front
的地址时,使用原地址;访问匹配://119.3.213.12:8080/api/
的地址时,使用本地调试的代理
3、使用
在线上环境中,选择刚刚配置的代理即可
image-20220630155051867