2011-12-29 155 views

回答

14

我已经使用Metrics。它与支持量表,计数器,仪表,直方图和计时器的鸵鸟非常相似;以及监控您的服务健康检查的机制。

您可以通过JMX或HTTP获取报告,以及报告Ganglia和Graphite等后端。

+0

谢谢你指出这个库。这非常有用。 – Shamik 2012-01-09 15:55:18

6

MBeans,JMX和JConsole应用程序的组合为本地以及远程JVM提供了本地支持。

javax.management包(http://www.oracle.com/technetwork/java/javase/tech/javamanagement-140525.html)扩展支持:http://www.oracle.com/technetwork/java/javase/tech/javamanagement-140525.html

JMX + JConsole监控范例是JVM中原生的,并且越来越易于​​在java SE 1.6中实现。

Java虚拟机(Java虚拟机)已内置工具是 使您能够监控和使用Java管理扩展 (JMX)技术管理。 从http://docs.oracle.com/javase/6/docs/technotes/guides/management/agent.html#gdevs

详细

的标准方法监测任何JVM(客户机,服务器,本地或远程)是利用JConsole的:http://docs.oracle.com/javase/6/docs/technotes/guides/management/jconsole.html。您可以一次打开多个JConsole客户端,监视不同的实例。

1)你先用这个参数启动您的JVM服务:

com.sun.management.jmxremote.port=portNum 

2)然后,远程客户机(你想做的监控之一)上,你就可以开始监控这个JVM

jconsole hostName:portNum 

对于超过不同的服务器

1)尝试的应用程式的Clearstone积分JVM分析:我没有使用我吨,但截屏显示支持,你似乎有分布envirnoment类型:

http://www.evidentsoftware.com/products/clearstone-for-java/

为的Clearstone包含的Java外的现成的收集器,其通过JMX提供指标。 ClearStone服务器可以收集和关联来自任何Java MBean的信息。

**最后,鸵鸟和JConsole中的另一个比较:**

Remote Probing of Scala/Java Application in Runtime

3

您可以使用与Heapster集成的鸵鸟。

Heapster

Heapster提供的试剂库来做为JVM 过程堆纹与与谷歌perftools兼容输出。Heapster的目标是能够在 生产设置中执行有意义的(采样)堆分析。

鸵鸟整合

如果使用鸵鸟,并与heapster运行您的程序,你可以 产生像这样运行时堆概况:

$卷曲的“localhost:9990/pprof /堆暂停= 10 & sample_period = 1024'> /tmp/prof这会收集10秒的堆增长, 采样周期为1kB。