今天断断续续的收到管理平台的异常报警,cpu占用过高和jvm old占用过高,这个时候赶紧去排查原因,下面记录了我的排查过程,可能里面还有不正确的地方,欢迎各位大佬指正,也欢迎大家关于类似的案例一起交流,下面就看我关于这次排查的过程把
报警
- cpu使用率过高报警,接近100%
- 后续又来了jvm old过高报警
排查过程
- 首先打开监控平台看报警节点的cpu使用情况
- 登录服务器找到占用 cpu过高线程堆栈信息
①通过 top 命令找到占用cpu最高的 pid[进程id]
定位到pid是 1469
②通过 top -Hp pid 查看进程中占用cpu过高的 tid[线程id]
③通过 printf '%x/n' tid 把线程id转化为十六进制
④通过