shell脚本监控系统资源-linux

#!/bin/bash
base_dir=/opt
war_processor="tomcat"
jar_processor="manager-server.jar platform-server.jar platform-task.jar platform-trade.jar platform-user.jar"
IP_ADDR=`/usr/sbin/ifconfig |grep inet |awk '{print $2}'|head -1`
MALL_ADDR="493630393@qq.com"
#磁盘超过百分之80发送邮件告警
disk_used() {
DISK_USED=`df -T |sed -n "2p" |awk '{print (4/3)*100}'`
DISK_percentage=80
if [ `expr "DISKUSED>DISK_percentage"` ]
then
echo "IPADDR:使DISK_USED%" | mail -s "服务器硬盘监控告警" $MALL_ADDR
fi
}
#内存使用率大于90%告警
mem_used() {
mem_pused=`/usr/bin/free -m | sed -n '2p'|awk '{ print (3+6)/2*100}'`     #memory usage percentage     percentage=90     #clean mem_cache 使用bc来进行比较,不然会报错     if [(echo "mempused>percentage"|bc) -eq 1 ]
then
echo "IPADDR:使mem_pused%" | mail -s "服务器内存监控告警" $MALL_ADDR
#echo "1qaz2wsx" |sudo -S sh /opt/shell/clean_mem_cache.sh
fi
}
#进程检测
process() {
for jar in jarprocessordoJARPROCESS=psef|grepjar |grep -v grep |wc -l`
if [ ! -n "jar_processor" ]
then
break
else
if [ JARPROCESS=0]thenecho"IP_ADDR:jar"|mails""MALL_ADDR
fi
fi
done

for war in warprocessordoWARPROCESS=psef|grepwar |grep -v grep |wc -l`
if [ ! -n "war_processor" ]
then
break
else
if [ WARPROCESS=0]thenecho"IP_ADDR:war"|mails""MALL_ADDR
fi
fi
done


}
process
disk_used

posted @   GaoYanbing  阅读(30)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示