这个脚本主要是配合定时任务,前端通过echats 来实时显示Linux的Java服务内存情况。脚本也是我自己查阅一些博客琢磨的有什么问题可以指出,大家共同进步。pname就是需要监控的Java服务名
#!/bin/bash
#jvm monitor
source /home/pay/.bash_profile
source /home/pay/.bashrll
pname=("PmcBackendServer" "UpperBackendServer" "FrontServer" "HostBackendServer" "ContractBackendServer"
)
for pname in ${pname[*]}
do
echo $loop
pid=$(jps | grep $loop | awk '{print$1}')
$pid
heap=$(jmap -histo ${pid} | grep Total |tail -n l)
echo $heap
objectnums=$(echo $heap | awk '{print $2}')
memory=$(echo $heap | awk '{print$3}')
echo $objectnums
echo $memory
sqlplus abc/abc@PAY <<EOF
insert into p_jvm_monitor values ('192.32.0.1','$pname',$objectnums,$memory,to_char(sysdate,'yyyy-mm-dd HH24:mi:ss'))
EOF
done;
---------------------
作者:面包树上的红苹果
来源:优快云
原文:https://blog.youkuaiyun.com/zoujuniovet/article/details/90599760