java远程进程监控_用jstack监控远程主机上的java进程

前面提到用visualvm监控远程主机上的java进程,这种方法的好处是可以“实时”监控,缺点是需要启动jstatd,且只能看到线程总数,无法显示每个线程的详细情况,jstack可以生成某一进程的dump,包含在特定时刻(命令执行时)Java进程内部各个线程的详细情况。首先用"jps -l"找到目标进程的PID,然后用"jstack [PID]"获得dump,对于大型程序这个dump一般也比较大,...
摘要由CSDN通过智能技术生成

前面提到用visualvm监控远程主机上的java进程,这种方法的好处是可以“实时”监控,缺点是需要启动jstatd,且只能看到线程总数,无法显示每个线程的详细情况,jstack可以生成某一进程的dump,包含在特定时刻(命令执行时)Java进程内部各个线程的详细情况。

首先用"jps -l"找到目标进程的PID,然后用"jstack [PID]"获得dump,对于大型程序这个dump一般也比较大,所以用"jstack [PID] > dump_file_name"的方法将结果保存在文件dump_file_name里。

下面是dump文件中的一段:

" HSQLDB Timer @5a1b5e32 " daemon prio=3 tid=0x0000000101116800 nid=0x420a in Object.wait() [0xfffffffb5c2ff000]

java.lang.Thread.State : TIMED_WAITING (on object monitor)

at java.lang.Object.wait(Native Method)

- waiting on <0xfffffffb721e7700> (a org.hsqldb.lib.HsqlTimer\(TaskQueue)

at org.hsqldb.lib.HsqlTimer\)TaskQueue.park(HsqlTimer.java:883)

- locked <0xfffffffb721e7700> (a org.hsqldb.lib.HsqlTimer\(TaskQueue)

at org.hsqldb.lib.HsqlTimer.nextTask(HsqlTimer.java:5

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值