【发布时间】:2012-12-05 04:23:11
【问题描述】:
我需要监控 Java 进程的性能并自动生成报告。报告应包含有关内存利用率线程使用情况、进程使用情况等的数据。但我不确定如何完成此操作。有什么建议吗?
【问题讨论】:
-
为了将来参考,SeaLion 是一个很好的工具,如果它只是你想做的监控。
标签: java performance monitoring health-monitoring
我需要监控 Java 进程的性能并自动生成报告。报告应包含有关内存利用率线程使用情况、进程使用情况等的数据。但我不确定如何完成此操作。有什么建议吗?
【问题讨论】:
标签: java performance monitoring health-monitoring
我需要监控 Java 进程的性能并自动生成报告。
您需要确定哪些指标对应用程序的用户很重要,例如延迟和吞吐量。即使一切看起来都很好,这些也经常受到影响。例如,一个 8 cpu 系统在 5 分钟内只有 6% 的繁忙可能听起来不错,但可能每 5 分钟有一个请求需要超过 2 分钟。
报告应包含有关内存使用线程使用情况的数据,
线程默认共享对象的一个关键特性。这意味着线程本地内存使用几乎总是微不足道的,通常不值得衡量。
进程使用等
这对于长时间的容量规划很有用,但对于查找特定于应用程序的问题没有用(见上文)。
但我不确定如何做到这一点。有什么建议吗?
找出哪些指标可以帮助您发现影响应用程序用户的问题。
【讨论】:
如果您想通过程序获取数据,您可以为此使用 JMX API。这是oracle关于这个主题的教程。
如果你只是想监控进程,有VisualVM之类的工具。
【讨论】:
VisualVM 是一个很好的工具来监控内存利用率和其他事情VisualVM
【讨论】: