虚拟机性能监控与故障处理工具

本文详细介绍JDK1.6和JDK1.8的命令行工具,包括appletviewer、javac、jps、jstat等,以及它们的主要功能和应用实例。深入探讨了jps、jstat、jmap、jinfo和jstack等监控和故障处理工具的使用方法。

6.1 jdk的命令行工具

     jdk的命令行工具一般在bin目录下,jdk1.6的如下:

 

-rwxr-xr-x 1 root root  52315 2015-03-07 appletviewer

-rwxr-xr-x 1 root root  52200 2015-03-07 apt

-rwxr-xr-x 1 root root   6407 2015-03-07 ControlPanel

-rwxr-xr-x 1 root root  51979 2015-03-07 extcheck

-rwxr-xr-x 1 root root    953 2015-03-07 HtmlConverter

-rwxr-xr-x 1 root root  51979 2015-03-07 idlj

-rwxr-xr-x 1 root root  51979 2015-03-07 jar

-rwxr-xr-x 1 root root  51979 2015-03-07 jarsigner

-rwxr-xr-x 1 root root  50794 2015-03-07 java

-rwxr-xr-x 1 root root  52264 2015-03-07 javac

-rwxr-xr-x 1 root root  52200 2015-03-07 javadoc

-rwxr-xr-x 1 root root  52264 2015-03-07 javah

-rwxr-xr-x 1 root root  52296 2015-03-07 javap

-rwxr-xr-x 1 root root 105223 2015-03-07 javaws

-rwxr-xr-x 1 root root  51987 2015-03-07 jconsole

-rwxr-xr-x 1 root root   6407 2015-03-07 jcontrol

-rwxr-xr-x 1 root root  52019 2015-03-07 jdb

-rwxr-xr-x 1 root root  51979 2015-03-07 jhat

-rwxr-xr-x 1 root root  52131 2015-03-07 jinfo

-rwxr-xr-x 1 root root  52131 2015-03-07 jmap

-rwxr-xr-x 1 root root  51979 2015-03-07 jps

-rwxr-xr-x 1 root root  51979 2015-03-07 jrunscript

-rwxr-xr-x 1 root root  52019 2015-03-07 jsadebugd

-rwxr-xr-x 1 root root  52131 2015-03-07 jstack

-rwxr-xr-x 1 root root  51979 2015-03-07 jstat

-rwxr-xr-x 1 root root  51979 2015-03-07 jstatd

-rwxr-xr-x 1 root root   2673 2015-03-07 jvisualvm

-rwxr-xr-x 1 root root  51979 2015-03-07 keytool

-rwxr-xr-x 1 root root  51979 2015-03-07 native2ascii

-rwxr-xr-x 1 root root  52235 2015-03-07 orbd

-rwxr-xr-x 1 root root  52059 2015-03-07 pack200

-rwxr-xr-x 1 root root  52347 2015-03-07 policytool

-rwxr-xr-x 1 root root  52296 2015-03-07 rmic

-rwxr-xr-x 1 root root  51979 2015-03-07 rmid

-rwxr-xr-x 1 root root  51979 2015-03-07 rmiregistry

-rwxr-xr-x 1 root root  52011 2015-03-07 schemagen

-rwxr-xr-x 1 root root  52296 2015-03-07 serialver

-rwxr-xr-x 1 root root  51979 2015-03-07 servertool

-rwxr-xr-x 1 root root  52235 2015-03-07 tnameserv

-rwxr-xr-x 1 root root 186301 2015-03-07 unpack200

-rwxr-xr-x 1 root root  51979 2015-03-07 wsgen

-rwxr-xr-x 1 root root  52011 2015-03-07 wsimport

-rwxr-xr-x 1 root root  52011 2015-03-07 xjc

 

jdk1.8的如下:

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 appletviewer

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 extcheck

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 idlj

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 jar

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 jarsigner

-rwxrwxr-x  1 root  wheel  103632  8  5  2015 java

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 javac

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 javadoc

-rwxrwxr-x  1 root  wheel    2293  8  4  2015 javafxpackager

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 javah

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 javap

-rwxrwxr-x  1 root  wheel    2293  8  5  2015 javapackager

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 jcmd

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 jconsole

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 jdb

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 jdeps

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 jhat

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 jinfo

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 jjs

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 jmap

-rwxrwxr-x  1 root  wheel     405  8  5  2015 jmc

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 jps

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 jrunscript

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 jsadebugd

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 jstack

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 jstat

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 jstatd

-rwxrwxr-x  1 root  wheel    5185  9 10  2014 jvisualvm

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 keytool

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 native2ascii

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 orbd

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 pack200

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 policytool

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 rmic

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 rmid

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 rmiregistry

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 schemagen

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 serialver

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 servertool

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 tnameserv

-rwxrwxr-x  1 root  wheel  116544  8  5  2015 unpack200

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 wsgen

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 wsimport

-rwxrwxr-x  1 root  wheel  103712  8  5  2015 xjc

 

 

sun jdk 监控和故障处理工具

名称

主要功能

应用实例

jps

JVM Process status Tool,显示制定系统内所有的HotSpot虚拟机进程

语法:jps [options][hostid]

jps -1

jps工具主要选项

 

虚拟机进程状况工具

-q

只输出LVMID,省略主类的名称

jps -q

输出:

8818

11776

-m

输出虚拟机进程启动时传递给主类main()函数的参数

jps -m

输出:

11788 Jps -m

8818 Bootstrap start

-l

输出主类的全名,如果进程执行的是jar包,输出jar路径

jps -l 

输出:

8818 org.apache.catalina.startup.Bootstrap

11747 sun.tools.jps.Jps

-v

输出虚拟机进程启动时参数

jps -v

输出:

 

jstat

JVM Statistics Monitoring Tool,用于收集HotSpot虚拟机个方面的运行数据

语法 :jstat [option vmid[interval[s|ms][count]]]

说明:命令总的vmid与lvmid:如果本地虚拟机进程vmid和lvmid是一致的,如果是远程虚拟机,那vmid的格式应当是:[protocol:][//]lvmid [@hostname[:port]/servername]

参数:interval 和count 代表查询间隔和次数,如果省略这两个参数,说明只查询一次,假设需要每250毫秒查询一次进程2764垃圾收集情况,一共查询20次,那命令应当是:

jstat -gc 2764 250 20

 

jstat工具主要选项

 

虚拟机统计信息监视工具

-class

监视类装载、卸载数量、总空间以及类装载所耗费的时间

jstat -class pid 间隔时间 次数

-gc

监视Java 堆状况,包括Eden区、两个survivor区、老年代、永久代等的容量、已用空间、GC时间合计

jstat -gc 8818 250 20

-gccapacity

监视内容与-gc基本相同,但输出主要关注java堆各个区域使用到的最大、最小的空间

-gcutil

监视内容与-gc基本相同,但输出主要关注已使用空间占总空间的百分比

-gccause

与-gcutil功能一样,但是会额外输出导致上一次GC产生的原因

-gcnew

监视新生代的GC状况

-gcnewcapacity

监视内容与-gcnew基本相同,输出主要关注使用到的最大、最小空间

-gcold

监视老年代的GC状况

-gcoldcapacity

监视内容与-gcold基本相同,输出主要关注使用到的最大、最小空间

-gcpermcapacity

输出永久代使用到的最大、最小空间

-compiler

输出JIT编辑器编辑过的方法、耗时等信息

-printcompilation

输出已经被JIT编译的方法

 

 

 

jinfo

Configuration info For Java,显示虚拟机配置信息

java配置工具信息

 

 

 

jmap

Memory Map for Java ,生成虚拟机的内存存储快照(heapdump文件)

java内存映像工具

jmap工具主要选项

 

 

-dump

生成Java堆转储快照。格式为:-dump :[live ,] format=b file=<filename>,其中live子参数说明是否只dump出存活的快照

 

-finalizerinfo

显示在F-Queue中等到finalizer线程执行finalize()方法的对象。只在linux,solaris平台下有效

-heap

显示java堆详细信息,如使用哪种回收器、参数配置、分代状况等,只在linux,solaris平台下有效

-histo

显示堆中对象统计信息,包括类、实例数量、合计容量

 

-permstat

以classLoader为统计口径显示永久代内存状态,旨在linux、solaris平台下有效。

-F

当虚拟机进程对-dump选项没有响应时,可使用这个选项强制生成dump快照,只在lunix/solaris平台下有效

 

 

 

 

jhat

JVM Heap Dump Browser,用于分析heapdump文件,它会建立一个HTTP/HTML服务器,让用户可以在浏览器上查看分析结果

 用来分析dump快照文件,虚拟机堆转储快照分析工具

 

jstack

Stack Trace for Java ,显示虚拟机的线程快照

java堆栈跟踪工具 命令格式 jstack [option] vmid

jstack -l 8818 >> /app/orgams/test.txt

jstack工具准要选项

 

 

-F

当正常输出的请求不被响应时,强制输出线程堆栈

 

-l

除堆栈外,显示关于锁的附加消息

jstack -l 8818

-m

如果线程调用到本地方法的话,可以显示C/C++的堆栈

jstack -m 8818

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值