4

I have got a storm cluster running and I want to monitor its performance. I followed this blog and was able to measure the number of tuples received by a bolt using codahale metrics and display it in graphite.

My goal is to deploy a storm cluster on a lightweight computer such as beaglebone and for that I need to be able to monitor JVM parameters such as CPU, thread and memory usage of each Worker Process.

I really like codahale metrics and would like to continue using it in my application. Can anyone direct me as to how I can measure JVM parameters separately for each worker using codahale metrics?

I would really appreciate it if someone posted an example of how to get jvm metrics using codahale metrics.

Thanks,

Palak

4

3 回答 3

1

使用 VisualVM 和 JMX,我们可以获得 CPU 使用率、GC 活动、类加载信息、堆大小和已用堆统计信息、所有线程信息以及统计信息、CPU 和内存分析、性能监控、工作节点的内存泄漏。您还可以获取堆转储和线程转储、分析器快照。

设置步骤

第 1 步:启动 VisualVM Java VisualVM 与 JDK 版本 6 更新 7 或更高版本捆绑在一起。导航到 JDK 软件的 bin 目录并双击 Java VisualVM 可执行文件。或者,导航到 JDK 软件的 bin 目录并在命令 (shell) 提示符下键入以下命令:jvisualvm。

第 2 步:添加 MBean 插件 对于 JMX 监控,您需要显式添加 MBean 插件。1、从主菜单中选择工具>插件。2、在下载的Plugins选项卡中,点击Add Plugins 3、选择Mbean插件 添加MBean插件成功后可以在VisualVM中看到MBean选项卡,可以监控JMX。

第 3 步:本地监控 默认情况下,VisualVM 将监控在本地 JVM 上运行的所有应用程序。如果您使用 Java 1.6 及更高版本,则无需进行任何更改。

第 4 步:远程监控
要检索和显示远程主机上运行的应用程序的信息,jstatd 实用程序需要在远程主机上运行。

运行 jstatd
的步骤 jstatd 工具是一个 RMI 服务器应用程序,它监视已检测的 HotSpot Java 虚拟机 (JVM) 的创建和终止,并提供一个接口以允许远程监视工具连接到 JVM。

1、创建一个文件名为“jstatd.all.policy”的文件并复制下面的内容授权代码库“file:${java.home}/../lib/tools.jar”{permission java.security.AllPermission;} ;

2、复制java bin(Java\jdk1.7.0_10\bin)目录下的“jstatd.all.policy”文件

3、导航到你的JDK软件的bin目录,在命令提示符下输入以下命令:jstatd -J-Djava.security.policy=jstatd.all.policy.txt

4、运行jstatd需要管理员权限,这时只有所有其他用户才能连接远程主机。这是一次活动。(在 CIT 和 SIT 中使用后台进程运行)

要在 VisualVM 中添加远程主机,请右键单击应用程序窗口中的远程节点,选择添加远程主机并在添加远程主机对话框中键入主机名或 IP 地址。当 Java VisualVM 连接到远程主机时,远程主机的节点会出现在应用程序窗口的远程节点下。您可以展开远程主机节点以查看远程主机上运行的应用程序。

于 2015-01-05T09:30:45.023 回答
1

我在这里找到了一个很好的教程。奇迹般有效。

于 2014-10-13T09:41:13.487 回答
0

Use jvisualvm.exe jdk/bin and you can monitor storm workers. Jvisualvm can also point to remote Storm topology.

Download and add mbean plugin into jvisualvm.

于 2015-01-04T15:50:37.917 回答