远程调试,以及Debug与info的区别

远程调试

远程调试:核心目的是将本地 IDE 连接到运行在远程服务器(或其他环境)上的 Java 进程,实时检查代码执行状态(如变量、调用栈、线程等)。

其中:

  1. IDEA 新增「Remote JVM Debug」配置

在 IDEA 中创建一个调试配置,用于连接到远程 ,使本地 IDE 能控制远程代码的执行流程(如设置断点、单步调试)。

  • Host:远程服务器地址(xx.com)。

  • Port:远程 JVM 的调试端口(如 10000,需与远程服务启动参数一致)。

  1. 远程连接

将本地 IDEA 调试器附加到远程 JVM,建立双向通信通道。

  • 确保远程服务已启动 Debug 模式

  • 在 IDEA 中启动调试

  1. Debug 模式改为「线程级别」

默认情况下,断点会挂起所有线程(All 模式)。

改为 线程级别(Thread) 后,仅挂起触发断点的线程,其他线程继续运行,避免阻塞整个应用。

如果本地代码与远程运行的代码版本不一致,调试时可能会出现:

  • 断点无法触发(行号不对应)。

  • 变量值显示错误(代码逻辑差异)。

断点模式:

全局断点(All):暂停所有线程(整个JVM卡住)

线程级断点(Thread):仅暂停当前触发断点的线程,其他线程正常执行

核心逻辑:

  1. 代码一致性

    1. 本地代码必须与远程服务运行的代码完全一致(相同分支、Commit ID、依赖版本)。

    2. 否则断点位置或变量状态可能对不上,导致调试失效。

  2. 运行状态分离

    1. 远程服务:实际运行的Java进程(承载真实流量或测试流量)。

    2. 本地IDE:仅作为调试控制器,通过Socket连接远程JVM,自身不运行服务。

  3. 调试能力

    1. 连接成功后,可以在本地IDE中:

✅ 设置断点(远程代码执行到对应位置时会暂停)。

✅ 查看远程服务的变量、调用栈、线程状态。

✅ 单步执行(Step Over/Into)、修改变量值(部分环境支持)。

  1. DEBUG(调试日志)

  • 用途:

    • 开发、测试阶段使用,用于详细追踪程序运行状态(如变量值、方法调用链、流程分支等)。

    • 帮助开发者快速定位问题。

  • 线上环境:

    • 通常关闭(不输出),因为会记录大量细节,影响性能且占用存储。

    • 只有在排查疑难问题时才会临时开启。

  • 示例:

logger.debug(); 

  1. INFO(信息日志)

  • 用途:

    • 记录程序关键运行节点(如服务启动、接口请求、业务操作完成等)。

    • 提供足够的信息用于监控和审计,但不会过于详细。

  • 线上环境:

    • 默认开启,长期保留,用于运维监控和问题回溯。

  • 示例:


logger.info("Order created, ID: {}", orderId); // 记录关键业务事件

区别

  1. 关键区别总结

特性DEBUGINFO
目的开发调试细节线上运维监控
日志量多(高频、详细)少(关键节点)
性能影响高(不推荐线上开启)低(适合线上)
保留策略非线上环境保留线上长期保留


  1. 实际开发中的建议

  • 遵循团队的日志规范,例如:

    • 开发时用 DEBUG 打印细节,但提交代码前检查是否误提交了敏感的 DEBUG 日志。

    • 线上环境通过日志框架(如 Logback、Log4j)配置只输出 INFO 及以上级别(如 WARN, ERROR)。

  • 避免滥用 INFO

    • 不要将调试信息打印到 INFO(如循环内的详细数据),否则会污染线上日志。


  1. 日志级别常见顺序

从低到高(详细 → 严重): DEBUGINFOWARNERRORFATAL

线上环境一般设置 INFOWARN 作为最低级别,过滤掉 DEBUG

近日总结:

哦,杭州,感觉这个城市有点克我,刚来第一天,两年没碎过的手机屏幕多了条缝。

本来还挺期待,杭州的饭菜应该得是偏清淡的,毕竟离嘉兴这么近,没想到,清淡不了一点。

口腹之欲大大降低......

这里的物价也挺高。

房东也挺坑,房价也高,还有这梅雨季,到底是谁在喜欢梅雨季啊,哦,是学长,应该只是来旅游摄影的,所以颇为喜爱吧。

但真的住在这里之后,喜欢不了一点,不喜欢这发霉的天气。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

雾喔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值