linux下bash脚本收集CPU和内存使用率超过阀值发送报警邮件到邮箱

自己没事写了个脚本用来收集资源使用情况,为后面的项目做好准备,具体bash如下

#!/bin/bash
#author Merci
#客户端资源使用情况收集
#############################################################################
#################################检测mailx###################################
#############################################################################
MAILXISEXIST=`rpm -qa | grep 'mailx'`
if [ ! $MAILXISEXIST ]
then
    yum install mailx -y
fi

#############################################################################
###############################CPU使用情况###################################
#############################################################################

UsedCpuInfo=`sar -u 1 5 | grep 'Average' | awk '{print $3}'`
CpuUsedRate=`awk 'BEGIN{printf "%.0f\n",'${UsedCpuInfo}'}'`
#echo ${CpuUsedRate}
if [ "$CpuUsedRate" -gt 80 ]
then
    echo "Cpu used rate Exceed threshold !!! $CpuUsedRate" | mailx -s "Cpu Excessive!" shevechco@qq.com
fi
#############################################################################
###############################内存使用情况##################################
#############################################################################
MemTotalInfo=`cat /proc/meminfo | grep 'MemTotal' | awk '{print $2}'`
#echo ${MemTotalInfo}
MemFreeInfo=`cat /proc/meminfo | grep 'MemFree' | awk '{print $2}'`
#echo ${MemFreeInfo}
MemUsedInfo=`expr ${MemTotalInfo} - ${MemFreeInfo}`
#echo ${MemUsedInfo}
MemUserdRate=`awk 'BEGIN{printf "%.0f\n",'${MemUsedInfo}'/'${MemTotalInfo}'*100}'`
#echo ${MemUserdRate}
if [ "$MemUserdRate" -gt 80 ]
then
    echo "Memory used rate Exceed threshold !!! $MemUserdRate" | mailx -s "Memory Excessive!" shevechco@qq.com
fi


内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://sulao.cn/post/480.html

我要评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。