最近一段需要监控观察web服务器上的日志文件是否有写入,用来判断是否服务进程是否是正常,为此就简单写了一个脚本:

#!/bin/bash
#check_logfile_io.sh
#Used to monitor logs I/O
#writer jim
#histor
#2017.3.22
log_file_path=/usr/local/apache/log/access.log

First_md5sum=$(/usr/bin/md5sum $log_file_path | awk '{print $1}')
sleep 2
Second_md5sum=$(/usr/bin/md5sum $log_file_path | awk '{print $1}')
#利用比对2次取得的md5值来判断文件是否有被改动
if [ "$First_md5sum" == "$Second_md5sum" ]
then
    echo "CRITICAL"
else
    echo "OK"
fi

当然可以在此基础上稍作修改用于监控中。