`
looyo
  • 浏览: 59207 次
  • 性别: Icon_minigender_1
  • 来自: 南京
文章分类
社区版块
存档分类
最新评论

jvmstat3.0工具的安装和使用

阅读更多

本文以windwos平台、查看本地java进程为前提。

  • 下载jvmstat3.0

jdk的工具集中包含相关的命令,但是不含图形工具visualgc,要使用图形工具需要下载jvmstat工具。

jvmstat3.0下载地址http://www.oracle.com/technetwork/java/jvmstat-142257.htm

注意:我使用的jdk版本为1.7,先前下载了jvmstat2.0,运行visualgc出错,似乎是jdk和jvmstat不匹配,所以大家还是下载最新的jvmstat3.0

报错信息如下:

C:\>visualgc.cmd 5868
Could not attach to 5868
Could not attach to 5868 : com.sun.jvmstat.perfdata.monitor.PerfDataBufferImpl2_
0



  • 安装 jvmstat3.0

下载好jvmstat3.0后就解压到硬盘上吧,比如解压路径为 d:\jvmstat

说是安装,其实就是设置一些环境变量。我把环境变量的设置写在了一个批处理文件中。

SET JAVA_HOME=C:\Program Files\Java\jdk1.7.0_17 rem 如果读者的环境中已经正确设置了这个变量,这句可以省掉。
SET JVMSTAT_JAVA_HOME=%JAVA_HOME%        rem 这句很重要,jvmstat的关键设置
SET JVMSTAT_HOME=d:\JVMSTAT
SET PATH=%PATH%;d:\JVMSTAT\BAT\;%JAVA_HOME%\bin;
jps                       rem 用来查看一下当前机器上的 JAVA进程,主要是查看一下进程号
cmd                      rem 这句是为了让批处理运行完后不自动退出,还允许用户在这个窗口中继续输入命令

通过上面的批处理文件的示例,相信大家都知道如何设置安装了。当然大家也可以在环境变量-->系统变量中直接设置好环境变量 JAVA_HOME、JVMSTAT_JAVA_HOME、PATH。

  • 运行visualgc工具

确保环境变量设置成功,可以通过jps命令(这个命令式jdk自带的,位置在 JAVA_HOME\bin下)查看当前有哪些java进程。

然后运行visualgc命令。 visualgc <pid>

运行界面如下图,

注意:Histogram窗口在jvm采用“-XX:+UseSerialGC”(串行收集器)垃圾收集器时才会出现。采用其它类型收集器时,Histogram功能不支持。



  • 监测远程服务器上的JVM


被监测服务器上可以不安装jvmstat3.0.

在被监测服务器上新建文本文件 jstatd.policy(比如 c:\jstatd.policy) , 其内容如下

grant codebase "file:${java.home}/../lib/tools.jar" {
    permission java.security.AllPermission;
};

你需要保证被监测服务器上环境变量 JAVA_HOME被正确设置。

然后在被监测服务器上运行如下命令(jstatd命令jdk自带,位置在JAVA_HOME\bin下),运行这个命令的窗口不要关闭

jstatd -J-Djava.security.policy=c:\jstatd.policy

如果要后台运行这个命令,可以在这句命令前加个 start /b,执行的命令为

start /b jstatd -J-Djava.security.policy=c:\jstatd.policy

在被监测服务器上 用jps命令查看java进程号;

然后就可以用visualgc 监测远程jvm了,其完整命令格式是 visualgc <pid>@<remoteIP>


示例命令如下

visualgc  2004@10.10.33.22
运行如上命令后就会出现如上图的窗口了。

  • visualvm中的visualgc
用visualvm工具也能实现如jvmstat中visualgc一样的图形界面功能。

visualvm(jdk1.6X开始就自带了,位置为JAVA_HOME\bin\jvisualvm.exe,也可以在oracle网站上下载单独工具包)可以安装visualgc的插件,安装后可以看到和上图相仿的图形界面。
在visualvm的窗口,选择菜单 工具-->插件,在插件窗口中选择 “可用插件”一页,选择visualgc进行安装;安装完成后,在visualvm窗口的左侧进程树种选择一个进程打开后,右侧就出现Visual GC的TAB页了,选择这个tab页就可以看到相关图形界面如下了


分享到:
评论

相关推荐

    jvmstat-3_0

    jvmstatshi是一个监控jvm状态的一个很直观的应用,图形化展示一目了然。

    jvmstat安装配置

    jvmstat安装配置,详细介绍jvmstat的安装配置及使用

    jvmstat-2.0_b11.zip

    jvmstat

    Jvmstat Chartist-开源

    Jvmstat Chartist是一个GUI应用程序,用于简单的分析处理和绘制由Sun的jvmstat实用程序收集的指标。

    visualVm1.4.2分析工具.rar

    VisualVM 是一款免费的性能分析工具。它通过 jvmstat、JMX、SA(Serviceability Agent)以及 Attach API 等多种方式从程序运行时获得实时数据,从而进行动态的性能分析。

    个人整理js解析XML文档

    到此我们知道了,当系统出现内存溢出时,是哪些参数设置不合理需要调整。但我们怎么知道服务器启动时,到底JVM内存相关参数的值是多少呢。...不信我们就去看看,下面介绍如何使用SUN公司的内存使用监控工具jvmstat.

    VisualVM_139 for mac

    它通过 jvmstat、JMX、SA(Serviceability Agent)以及 Attach API 等多种方式从程序运行时获得实时数据,从而进行动态的性能分析。同时,它能自动选择更快更轻量级的技术尽量减少性能分析对应用程序造成的影响,...

    VisualVM1_3_9多语言版本(visualvm_139-ml.zip)及离线插件包(plugins for 1.3.9.rar)

    VisualVM1.3.9(2017年11月从官网下载并安装插件验证通过)通过 jvmstat、JMX、SA(Serviceability Agent)以及 Attach API 等多种方式从程序运行时获得实时数据,从而进行动态的性能分析。同时,它能自动选择更快更...

Global site tag (gtag.js) - Google Analytics