Nagios监控

时间:2014-09-15 07:09:06

标签: monitoring nagios

以下是要求:

我有一个运行python和django的应用程序。此应用程序的用户登录详细信息将保存到mysql表。用户登录应用后,将在此表上进行更新。因此,如果应用程序上没有活动两天,我需要在nagios上打印“CRITICAL”状态,否则在nagios上打印“OK”状态。是否可以使用nagios实现?

任何帮助都将不胜感激。

提前致谢

3 个答案:

答案 0 :(得分:1)

是的,这是可能的。让服务对数据库运行查询以计算自上次更新以来的天数。如果> 2,请将服务设置为CRITICAL。

答案 1 :(得分:1)

lastupdate=$msql query to count last day update from today date

if lastupdate > 2 ;then             
echo 'Your requirement is Completed'                                          
exit 2;

else

echo 'Your requirement is not Completed '    
exit 0; 

答案 2 :(得分:0)

您可以创建一个脚本来连接到您的mysql数据库,例如:

SELECT date FROM users ORDER DESC BY date LIMIT 1
INTO OUTFILE '/tmp/tmpnagiosusers.txt'

然后你有las注册日期,所以你可以在你的sh脚本中使用它!例如(非常简单和可扩展):

    today=`date +"%Y-%m-%d")
    user=$(mysql -D $MYDB -u $MYUSER -p $MYPASS -se "SELECT COUNT(user_id) FROM users WHERE date >= $today - 2")
    if [ $user -lt 1 ];
    then
     echo 'THere is a problem, you dont have much people registering ($user)' in the last twoo days;
     exit 1;
    else
     echo 'Ok you have $user registrations the last twoo days'
     exit 0;
    fi