获取磁盘使用情况
DATE=$(date +'%Y_%m_%d %H:%M:%S')
IPADDR=$(ifconfig | grep inet | awk 'NR==1{ print $2 }')
MAIL="XXX@163.com"
useRate=$(df -Th | awk '{sum += $6} END {print sum}')
if [[ ${useRate} -ge 90 ]];then
echo "
Date: ${DATE}
Host: ${HOSTNAME}: ${IPADDR}
Problem:
Memory using rate: up ${useRate}%
" | mail -s "CPU Monitor Warnning" ${MAIL}
fi
获取内存的使用情况
DATE=$(date +'%Y_%m_%d %H:%M:%S')
IPADDR=$(ifconfig | grep inet | awk 'NR==1{ print $2 }')
MAIL="xxx@163.com"
TOTAL=$(free -mw | awk 'NR==2{ print $2 }')
USE=$(free -mw | awk 'NR==2{ print $3 }')
FREE=$(free -mw | awk 'NR==2{ print $4 }')
CACHE=$(free -mw | awk 'NR==2{ print $7 }')
useRate=$(echo "((${USE}+${CACHE})/${TOTAL})*100" | bc -ql)
freeRate=$(echo "(${FREE}/${TOTAL})*100" | bc -ql)
if [[ ${FREE} -le 100 ]];then
echo "
Date: ${DATE}
Host: ${HOSTNAME}: ${IPADDR}
Problem:
Memory using rate: ${useRate}%
Memory free rate: ${freeRate}%
" | mail -s "CPU Monitor Warnning" ${MAIL}
fi
获取CPU的使用情况
DATE=$(date +'%Y_%m_%d %H:%M:%S')
IPADDR=$(ifconfig | grep inet | awk 'NR==1{ print $2 }')
MAIL="XXX@163.com"
ATE=$(date +'%Y_%m_%d %H:%M:%S')
IPADDR=$(ifconfig | grep inet | awk 'NR==1{ print $2 }')
MAIL="bavduer@163.com"
if ! which vmstat &>/dev/null; then
yum -y install procps-ng &>/dev/null
if [ $? -eq 0 ];then
echo "vmstat already installed"
fi
fi
US=$(vmstat | awk 'NR==3{ print $13 }')
SY=$(vmstat | awk 'NR==3{ print $14 }')
ID=$(vmstat | awk 'NR==3{ print $15 }')
WA=$(vmstat | awk 'NR==3{ print $16 }')
ST=$(vmstat | awk 'NR==3{ print $17 }')
useTotal=$((${US}+${SY}))
if [[ ${useTotal} -ge 70 ]];then
echo "
Date: ${DATE}
Host: ${HOSTNAME}: ${IPADDR}
Problem: CPU using rate: ${useTotal}%
" | mail -s "CPU Monitor Warnning" ${MAIL}
fi