【问题标题】:How to trace a java application running on a remote host如何跟踪在远程主机上运行的 Java 应用程序
【发布时间】:2018-09-10 10:37:00
【问题描述】:

我知道 btrace 工具,它允许您在执行方法调用时打印它们。但它似乎不适用于在远程主机上运行的 java 应用程序。

我不需要线程转储。当执行特定用例时,我要查看哪些类和方法会受到影响。它们应该在调用后立即打印出来。如何实现?

【问题讨论】:

  • 你用过logger吗?

标签: java remote-debugging trace


【解决方案1】:

好的,我终于找到了可以做到这一点的工具:

跟踪中

http://mchr3k.github.io/org.intrace/

它不以进程ID作为参数,而是以IP地址的主机名和远程主机的端口号代替。所以它显然适用于远程 java 进程。

我自己已经测试过了。它打印出我需要的所有东西——完整的类名、方法名、参数甚至行号。

【讨论】:

    【解决方案2】:

    结帐Visualvm。它是免费的,并且与 jdk 捆绑在一起。

    它显示线程视图,类视图。但是,它不显示方法调用视图。 如果需要方法调用视图,请使用 JProfiler 或 Yourkit java profiler 等分析器。

    【讨论】:

    • 最好说VisualVM是和java一起安装的,这样就没有人开始搜索这个免费的工具了;)
    • @ka3ak 是的,同意。更新了答案。
    【解决方案3】:

    你应该为此使用记录器。您可以使用带有记录器的调试和信息日志来跟踪每个方法调用。

    【讨论】:

      猜你喜欢
      • 2011-07-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-09
      • 1970-01-01
      • 2022-01-14
      • 1970-01-01
      • 2014-04-25
      相关资源
      最近更新 更多