jstat是jvm统计监测工具吗
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jstat是jvm统计监测工具吗相关的知识,希望对你有一定的参考价值。
是的,jstat命令工具用于显示JVM的性能统计数据,目标虚拟机用vmid标示。语法:
[protocol:][//]lvmid[@hostname][:port][/name]
protocol
通讯协议,如果protocol 和hostname都未指定,则采用平台自身的最优本地协议,如果protocol 未指定但是hostname指定了,则缺省协议为rmi。
lvmid
本地虚拟机标识(The local virtual identifier for the target JVM),是vmid唯一一个必需指定的参数值。The lvmid 常常是操作系统目标JVM的进程ID,你可以用jps命令或者ps命令来查看lvmid。
hostname
主机名或者IP地址,未指定的话默认为localhost.
port
与远程服务器通讯的缺省端口,如果hostname或者protocol都未指定的话,port也不必指定。对于缺省的rmi协议,port指的是远程主机注册的rmi端口号,缺省为1099。
servername
如果protocol指定为本地最优协议(the optimized local protocol ),则该字段可忽略,对于rmi协议,name代表的是远程中RMI远程对象的名字。
参数选项
jstat命令支持两种参数,通用参数(general options)和输出参数(output options)。通用参数用于显示jstat的基本用法和版本信息,输出参数决定了输出的统计数据的格式和内容。
通用选项(GENERAL OPTIONS)
有排他性,指定通用参数的其中一个则不能指定其他参数,包括其他通用参数和输出参数选项。
-help
帮助信息
-version
版本信息
-options
显示输出选项参数列表
输出选项(OUTPUT OPTIONS)
如果不设定通用选项,则可以设定输出选项。输出选项决定了jstat命令的输出内容和格式,它可以包含单个statOption,外加其他输出命令(-h, -t 和-J).
statOption 必须放在前面。如jstat -gccapacity -t 1234
输出内容被格式化为表格的形式,第一行为每一列的列明。可以使用-h参数来指定每隔多少行显示行名,
如jstat -gccapacity -h 2 31538 250 7表示显示新生代的容量统计,每两行显示一次列名,采样时间间隔为250ms,共采样7次。
使用-t参数显示时间戳,作为第一列输出,列名为Timestamp它表示自从目标JVM启动以来逝去的时间,以秒为单位。
使用interval 和 count 参数来决定采样的频度和时间,如上个例子所示。
注意: jstat 输出内容格式在以后的版本中可能改变,所以不建议自己写脚本来解析。 参考技术A jstat可以统计任何jdk版本的。Jstat是JDK自带的一个轻量级小工具。全称“JavaVirtualMachinestatisticsmonitoringtool”,它位于java的bin目录下,主要利用JVM内建的指令对Java应用程序的资源和性能进行实时的命令行的监控,包括了对Heapsize和垃圾回收状况的监控。可见,Jstat是轻量级的、专门针对JVM的工具,非常适用。由于JVM内存设置较大,图中百分比变化不太明显一个极强的监视VM内存工具。可以用来监视VM内存内的各种堆和非堆的大小及其内存使用量。jstat工具特别强大,有众多的可选项,详细查看堆内各个部分的使用量,以及加载类的数量。使用时,需加上查看进程的进程id,和所选参数。执行:cd$JAVA_HOME/bin中执行jstat,注意jstat后一定要跟参数。语法结构:Usage:jstat-help|-optionsjstat-[-t][-h][[]]参数解释:Options—选项,我们一般使用-gcutil查看gc情况vmid—VM的进程号,即当前运行的java进程号interval–间隔时间,单位为秒或者毫秒count—打印次数,如果缺省则打印无数次S0—Heap上的Survivorspace0区已使用空间的百分比S1—Heap上的Survivorspace1区已使用空间的百分比E—Heap上的Edenspace区已使用空间的百分比O—Heap上的Oldspace区已使用空间的百分比P—Permspace区已使用空间的百分比YGC—从应用程序启动到采样时发生YoungGC的次数YGCT–从应用程序启动到采样时YoungGC所用的时间(单位秒)FGC—从应用程序启动到采样时发生FullGC的次数FGCT–从应用程序启动到采样时FullGC所用的时间(单位秒)GCT—从应用程序启动到采样时用于垃圾回收的总时间(单位秒)
jstat命令详解---JVM的统计监测工具
参考技术A jstat命令可以查看堆内存各部分的使用量,以及加载类的数量。命令的格式如下:
命令:
结果:
解析:
命令:
结果:
解析:
命令:
结果:
解析:
命令:
结果:
解析:
命令:
结果:
解析:
命令:
命令:
命令:
命令:
命令:
命令:
结果:
解析:
命令:
结果:
解析:
以上是关于jstat是jvm统计监测工具吗的主要内容,如果未能解决你的问题,请参考以下文章