在服务器部署了java程序,看日志像是中断了。查看进程还在,做了以下排查:
- 找到进程id
jps -l
- 找到卡死的线程信息
top Hp pid
这一步会看到占用cpu最高的线程id,类似于
3. 查看线程信息
jstack pid
把以上命令得到的结果输出到文件,再把线程id(即第2步得到的)转为16进制,这里30049即0x7561,在文件中搜索。不出意外是能看到线程信息的。
这里就能看到此线程的运行状态,对cpu占用过高排查是有帮助的。
PS:此次发现是这个线程进入死循环…