是否有Java等同于Twitter的鸵鸟库?

Sha*_*mik 9 java ostrich

来自Twitter的鸵鸟项目似乎非常适合我的用例,我想跟踪大量基于JVM的统计信息以及一些自定义统计信息.

https://github.com/twitter/ostrich/

但是,我的代码库是纯Java + Spring 3.0,而不是Scala,所以我可以将Ostrich用于我的案例吗?

小智 14

我使用了Metrics.它与鸵鸟非常相似,支持仪表,计数器,仪表,直方图和计时器; 还有一种监控服务健康检查的机制.

您可以通过JMX或HTTP获取报告,也可以报告像Ganglia和Graphite这样的后端.


jay*_*100 6

MBean,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 VM)具有内置工具,使您可以使用Java Management Extensions(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
Run Code Online (Sandbox Code Playgroud)

2)然后,在远程客户端(您要进行监视的客户端)上,您可以开始监视此JVM

jconsole hostName:portNum
Run Code Online (Sandbox Code Playgroud)

用于在不同服务器上集成JVM Analytics

1)尝试使用Clearstone应用程序:我没有使用它,但屏幕截图似乎支持您似乎拥有的分布式环境类型:

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

ClearStone for Java包含一个开箱即用的收集器,可通过JMX提供指标.ClearStone服务器可以收集和关联来自任何Java MBean的信息.

**最后,对于鸵鸟和jconsole的另一个比较:**

在运行时远程探测Scala/Java应用程序