加入收藏 | 设为首页 | 会员中心 | 我要投稿 汽车网 (https://www.0577qiche.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

对 Java系统线上生产难题一梭排查

发布时间:2023-04-01 11:24:38 所属栏目:教程 来源:
导读:Java系统线上生产问题排查一把梭

1 环境
1.1 Dev
可以随意使用任何熟悉的工具排查。只要问题能重现,排查就不会太难,最多就是把程序调试到各种框架源码,所以这也是为何面试都会问源码,不求都看过,但要有思路
Java系统线上生产问题排查一把梭

1 环境
1.1 Dev
可以随意使用任何熟悉的工具排查。只要问题能重现,排查就不会太难,最多就是把程序调试到各种框架源码,所以这也是为何面试都会问源码,不求都看过,但要有思路知道如何去看能解决问题。

1.2 Test
比开发环境少了debug,不过也可使用jvisualvm或Arthas,附加到远程JVM进程。

1.3 Prd
该环境下开发人员的权限最低,所以排查问题时障碍很大:

2 监控
生产环境出现问题时,因为要尽快恢复应用,就不可能保留完整现场用于排查和测试。因此,是否有充足的信息(日志、监控和快照)可以了解历史、还原bug 场景。 最常用的就是 ELK 的日志了,注意:

确保错误、异常信息可被完整记录到文件日志
确保生产上程序的日志级别是INFO以上 记录日志要使用合理的日志优先级,DEBUG用于开发调试、INFO用于重要流程信息、WARN用于需要关注的问题、ERROR用于阻断流程的错误

应用层面
需监控JVM进程的类加载、内存、GC、线程等常见指标(比如使用Micrometer来做应用监控),此外还要确保能够收集、保存应用日志、GC日志

分析定位问题的最佳实践
定位问题,首先要定位问题出在哪个层次:Java应用程序自身问题还是外部因素导致。
 

(编辑:汽车网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章