排查java 内存CPU报警

#!/bin/bash
#接收外部传入PID,任选一种
#servicePid=$1

servicePid=`ps auxw|sort -rn -k3|head -2|sed -n '1p'|awk '{print $2}'`

/alidata/jdk1.7.0_79/bin/jstack -l ${servicePid} >> jstack.out

#查看该进程的线程情况,排查进程中哪些线程占用率很高,排名前10
servicePid=`ps -mp ${servicePid} -o THREAD,tid,time|sort -rn|head -n 10|awk '{print $8}'|sed -n '2,10p'|grep -v '-'`

for i in $servicePid
do
id=`printf '%x\n' $i`
echo "线程:$i,16进制数值:$id"
done

猜你喜欢

转载自www.cnblogs.com/ipyanthony/p/11352936.html
今日推荐