赞
踩
在微服务开发中,开发的服务可能会依赖数据库、消息队列等资源,也有可能依赖其他的服务,这些服务又有新的依赖,或同一套代码本地环境没问题测试环境出问题无法复现,这种情况下,在自己的开发环境中完全模拟测试、线上环境变的极其困难。
之前的传统做法是:查看异常日志,根据日志定位到出错代码,然后再根据相关参数及异常信息进行推断。但是很多异常问题需要更细致的进行debug才能够更精准的去定位和解决,这种情况下,我们希望能够像在本地调试一样去debug线上/测试环境的代码,这样可以大大提升bug修复的效率。IDEA 远程调试为我们提供了解决方案,像运行本地代码一样调试远程主机上的程序,以排查远程程序的BUG或代码执行流程。
本机和远程主机的两个 VM 之间使用 Debug 协议通过 Socket 通信,传递调试指令和调试信息。
被调试程序的远程虚拟机:作为 Debug 服务端,监听 Debug 调试指令。jdwp是Java Debug Wire Protocol的缩写。
调试程序的本地虚拟机:IDEA 中配置的 Remote Server,指定 Debug 服务器的Host:Port,以供 Debug 客户端程序连接。
-Xdebug
-Xrunjdwp:transport=dt_socket,address=5005,server=y,suspend=n
Host:融合云对应实例 PodIp
Port:融合云JVM中 address端口
Use module classpath:选择需要远程调试的代码
启动远程调试
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。