您的位置:首页 > 数据库 > MariaDB

提取mariadb(mysql) 报错日志并自动邮件上报告警内容

2016-05-03 10:20 651 查看
前提安装mailx

yum -y install mailx

2.初始值设为0
echo 0 >/tmp/mysqlerrorNB.log
3.每隔5分钟检测mysql日志
crontab -e
*/5 * * * * sh /scripts/mysqlerr.sh >/dev/null 2>&1

脚本如下:
#!/bin/shell

log=/home/DBdata/DB2.err
#原来error记录数
numA=`cat /tmp/mysqlerrorNB.log`

#当前error数
numB=`cat $log|grep "ERROR"|wc -l`

#增加的error条目
numC=$(($numB - $numA))

#从日志中过滤出error日志
errTotal=/tmp/mysqlerrTotal.log

#对新增的error日志提取,并上报告警
errIncrease=/tmp/errIncrease.log

if [[ $numC > 0 ]]
then
`cat $log|grep "ERROR" >$errTotal`
tail -n $numC $errTotal >$errIncrease
mail -s "mysql10.0.0.111 error alert!" to test@163.com <$errIncrease #上报告警功能
echo $numB >/tmp/mysqlerrorNB.log
exit 1
else
echo "it's ok" >/dev/null 2>&1
exit 1
fi
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux shell 自动化