如何根据日志的输出内容来触发其它操作

MySQL slave错误日志中报“[ERROR] Error reading packet from server:Lost connection to MySQL server during query(server_errno=2013)”。

怀疑是网络闪断导致的主从连接中断,但是通过zabbix监控网络粒度又比较大(一分钟一次),这样容易导致网络的闪断并不能及时被捕捉到。

最好能有一种方式,根据日志的输出,来触发ping操作,从而进一步确认问题发生时的网络状况。

脚本如下:

tail -fn0 /var/log/mysqld.log | \
while read line ; do
        echo "$line" | grep "Error reading packet"
        if [ $? = 0 ]
        then
                date +"%Y-%m-%d %H:%M:%S" >> /tmp/network.txt
                ping 192.168.244.20 -c 30 >> /tmp/network.txt
        fi
done

 

posted @ 2016-12-01 14:37  iVictor  阅读(887)  评论(0编辑  收藏  举报