如何根据日志的输出内容来触发其它操作
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