如何在应用程序引发异常时使用记录的转储调试生产Java?

问题描述 投票:0回答:1

我们如何调试以后引发异常时发生的情况?

我们有一个用Java编写的生产应用程序,它会随机引发一个异常,我们可以捕获该异常并在服务器上登录。 我们想调试一下以查看发生了什么,因为日志并没有显示太多信息。

通过调试,我的意思是走进诸如Eclipse或IntelliJ的调试器之类的调试器,并遍历代码以了解引发异常时发生的情况,并完整地将数据传递给方法和局部变量等。

因此,无论何时发生这种情况,我都希望保存某种转储,然后能够在某种工具中加载该转储,以便事后对其进行调试。

因此,我更喜欢以下解决方案:

  • 可以从代码创建转储文件, 而不会影响我们的生产应用
  • 例如,可以使用GUI工具(例如Eclipse的调试器)进行分析。
java debugging production
1个回答
1
投票

我建议看一下Oracle的JVM Flight Recorder,它不是免费的,但恰好适用于这种情况。

http://www.oracle.com/technetwork/java/javaseproducts/mission-control/java-mission-control-1998576.html

© www.soinside.com 2019 - 2024. All rights reserved.