nagios监控日志行数遇到的坑

By | 2017年9月6日

最近有个需求,需要监控error日志行数是否增加,来判断业务可用性。

开始监控时,总是不生效,出现各种奇葩状态,

脚本如下:

#!/bin/bash
HTTPLINE=`cat /tmp/icbcline.log`
echo `cat /icbc_check_log/nchttps/error.log | wc -l`>/tmp/httpicbcnagios.log
HTTPDLIN=`cat /tmp/httpicbcnagios.log`
#echo $LINE
#echo "-----------"
#echo $DLIN
SIGNLINE=`cat /tmp/signicbcline.log`
echo `cat /icbc_check_log/ncsign/error.log | wc -l`>/tmp/signicbcnagios.log
SIGNDLIN=`cat /tmp/signicbcnagios.log`
if [ ${HTTPDLIN} -gt ${HTTPLINE} -o ${SIGNDLIN} -gt ${SIGNLINE} ] ;then
 echo "ICBC is critical|httpline=$HTTPDLIN;;signline=$SIGNDLIN;;"
 
 exit 2
else
 echo "ICBC is okaa|httpline=$HTTPDLIN;;signline=$SIGNDLIN;;"
 exit 0
fi

最后发现是权限的问题,开始只注意了脚本执行权限,没注意到脚本里面的文件的读写权限,最后使用-gt的时候,用NULL去做对比,使监控状态和想要的状态不一致。以后使用注意此事宜。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注