使用JDK 自带jstack工具排查问题

注意需要检查jdk 是否

有 jstack 命令,命令在jdk/bin 目录下

image

1、 先拿到tomcat进程ID,用top -c 找到cpu使用率最高的 的PID

top -c

image

 

记录下tomcat应用进程的ID: 24596(我拿到的是这个值)

2、 拿到CPU占用最高、时间最长的线程ID  top -H -p  pid

top -H -p 24596

image

3、 将需要的线程ID转换为16进制格式 如: 21893 这个线程

printf "%x\n" 24602

image

得到结果:601a(这里我只查看了1852这个线程ID)

4、打印线程的堆栈信息 前30行 jstack pid| grep 601a -A 30

 jstack 24596 | grep 601a -A 30

image

 

posted @ 2025-08-06 19:31  xiao-jie-tian  阅读(9)  评论(0)    收藏  举报