JAVA進程高CPU佔用故障排查



1.用 top 命令找出java應用pid 得到${java_pid}               

2.找到耗時最高的線程tid:    //也可以(top之後再按shift+H可以顯示線程)查看CPU使用率高的線程

 ps -mp ${java_pid} -o THREAD,tid,time | sort -rn

 得到${java_thread_tid}

3.將需要的線程ID轉換爲16進制格式:

 printf "%x\n" ${ java_thread_tid}
 
 得到${java_thread_tid_hex}

4.將結果輸出到文件:

 (jstack  ${java_pid} | grep  ${java_thread_tid_hex}  -A 30)>>/usr/local/java_thread.log
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章