JVM 进程监控之 jps

jdk自带的jps命令可以查看当前JVM中运行的Java进程ID,java程序在启动以后,会在java.io.tmpdir指定的目录下,就是临时文件夹里,生成一个类似于hsperfdata_User的文件夹,这个文件夹里(在Linux中为/tmp/hsperfdata_{userName}/),有几个文件,名字就是java进程的pid。

输入jps -help,可以输出jps的具体用法,如下所示:
 

usage: jps [-help]
jps [-q] [-mlvV] [<hostid>]
Definitions:
<hostid>: <hostname>[:<port>]

ps命令使用方式为 jps [options] [hostid],其中options为命令行选项,jps支持-q,-m,-l,-v,-V,-J选项。hostid为要监控的主机地址端口,默认为当前主机的默认端口。如下为jps支持的选项详细说明:

jps -q 仅仅生成进程ID列表
jps -m 输出传递给main方法的参数,如果为嵌入式JVM,输出可能为空
jps -l 输出应用程序主类的完整包名称或者应用程序jar包的完整路径和进程ID
jps -v 输出进程ID,主类名称或者jar包名称和启动应用程序所使用的jvm参数
jps -V 输出进程ID,主类名称或者jar包名称
jps -J 传递的参数为启动jps命令所需要的参数,比如-J-Xms48m将启动内存设置为48MB,-J选项用于将选项传递给执行用Java编写的应用程序的底层JVM

上面的命令只是监控输出本机的进程,除此之外jps命令还可以监控远程主机中的Java进程。我们可以通jps <hostid>来输出远程主机的进程列表,前提是远程主机需要启动rmi服务。我们可以通过jstatd命令开启一个rmi服务。可以参考jstatd部分介绍。使用方式如下:

jps -l remote.domain 
jps -m remote.domain:2002

上面的命令是将进程信息输出到屏幕,除此之外,还可以将进程输出到文件里,命令为:

jps > pid.txt

更多介绍可以参考官方文档jps-Java虚拟机进程状态工具

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值