企业级Shell案例(一)
#!/bin/bashpath=/usr/local/sbin
MAIL_GROUP="123@qq.com 456@163.qq.com"
PHONE_GROUP="10086 10010"
LOG_FILE="/tmp/mysql_check.log"
USER=root
PASSWD=123456
PORT=3306
MYSQLCMD="mysql -u$USER -p$PASSWD -S /tmp/mysql.sock"
error=(1008 1007 1062)
RETVAL=0
[ ! -d $path ] && mkdir -p $path
JudgeError(){
for((i=0;i /dev/null
if [ $? -ne 0];then
status=300
fi
if [ "${status}" == "Yes" -a "${status}" == "Yes" -a ${stauts} -lt 120]
then
echo "Mysql slave is ok!"
return 0
else
echo "Mysql slave is failed."
fi
}
MAIL(){
local SUBJECT_CONTENT=$1
for MAIL_USER in `echo $MAIL_GROUP`
do
mail -s "$SUBJECT_CONTENT" $MAIL_USER < $LOG_FILE
done
}
PHONE(){
for PHONE_USER in `echo $PHONE_GROUP`
do
TITLE=$1
CONTACT=$PHONE_USER
send_message # 发送信息的方法自行添加!
done
}
SendMsg(){
if [ $1 -ne 1 ];then
RETVAL=1
NOW_TIME=`date +"%Y-%m-%d %H:%M:%S"`
SUBJECT_CONTENT="mysql slave is error, error is $2, ${NOW_TIME}."
echo -e "$SUBJECT_CONTENT"|tee $LOG_FILE
MAIL $SUBJECT_CONTENT
PHONE $SUBJECT_CONTENT $NOW_TIME
else
echo "Mysql slave status is ok."
RETVAL=0
fi
return $RETVAL
}
main(){
while true
do
CheckDB
SendMsg $?
sleep 30
done
}
main
页:
[1]