监控服务器swap并重启php的Shell脚本

(编辑:jimmy 日期: 2024/12/25 浏览:2)

折中一下,写个脚本监控swap吧,放在crontab里面,2小时执行一次,世界安静了,再也没有烦人的报警短信了
复制代码 代码如下:
#!/bin/bash
function usage
{
        echo "Usage: $0"
        echo "e.g. $0 1500"
        exit
}
if [ $# -lt 1 ];then
        usage
fi
typeset -i nowSwap limitSwap
limitSwap=$1
nowSwap=$(free -m|grep "Swap"|sed -e "s/\(.*\)\:\(.*\)/\2/g"|awk '{print $2}')
if [ $limitSwap -lt $nowSwap ];then
        while [ 1 ]
        do
                if /etc/init.d/php5-fpm restart|grep -c fail
                then echo "[$(date +%Y/%m/%d0-%H:%M)]restart php failed"
                else
                        echo "[$(date +%Y/%m/%d-%H:%M)]restart php successful!"
                        break
                fi
        done
fi

注:if /etc/init.d/php5-fpm restart|grep -c fail 这一句中间的命令换成你自己的即可