如何使用线上环境进行本地代码调试

简介: 如何使用线上环境进行本地代码调试

前言

当线上环境出现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

目录
相关文章
|
Web App开发 Go API
RTSPtoWebRTC
RTSPtoWebRTC
768 0
|
Web App开发 JavaScript 前端开发
2023Node.js零基础教程(小白友好型),nodejs新手到高手,(一)NodeJS入门
2023Node.js零基础教程(小白友好型),nodejs新手到高手,(一)NodeJS入门
904 0
|
网络协议 网络架构
深入理解IP地址、子网掩码、网关的概念
深入理解IP地址、子网掩码、网关的概念
6941 0
深入理解IP地址、子网掩码、网关的概念
|
应用服务中间件
快速解决idea启动项目报错:Unable to open debugger port(127.0.0.1:58950):java.net.SocketException“socket closed
快速解决idea启动项目报错:Unable to open debugger port(127.0.0.1:58950):java.net.SocketException“socket closed
3634 0
|
SQL JSON Java
springboot 如何编写增删改查后端接口,小白极速入门,附完整代码
本文为Spring Boot增删改查接口的小白入门教程,介绍了项目的构建、配置YML文件、代码编写(包括实体类、Mapper接口、Mapper.xml、Service和Controller)以及使用Postman进行接口测试的方法。同时提供了SQL代码和完整代码的下载链接。
springboot 如何编写增删改查后端接口,小白极速入门,附完整代码
|
监控 Java 测试技术
技术分享:设计依赖双父任务的子任务执行流程
在复杂的工作流和项目管理中,任务之间的依赖关系至关重要。当一个子任务需要等待两个或多个父任务同时完成后才能执行时,合理的设计和实现这一流程对于确保项目顺利推进至关重要。以下,我将从设计思路、技术实现、以及优化策略三个方面,分享如何在工作学习中有效处理这种依赖关系。
410 2
|
人工智能 缓存 算法
10年大牛用10000字带你彻底搞懂算法模型:I/O自动机、编程模型!
并发执行算法的模型与顺序执行算法不一样。在设计顺序执行算法时,我们的出发点是如何减少执行的步数(时间开销)和内存的占用空间(空间开销),我们会很习惯地思考第一步做什么、第二步做什么。
|
消息中间件 安全 Java
线程和进程的区别及应用场景
线程和进程的区别及应用场景
|
缓存 索引
cpu缓存一致性问题---cache写策略
cpu缓存一致性问题---cache写策略
309 1
|
消息中间件 测试技术 领域建模
DDD - 一文读懂DDD领域驱动设计
DDD - 一文读懂DDD领域驱动设计
48197 6

热门文章

最新文章