以下是要求:
我有一个运行python和django的应用程序。此应用程序的用户登录详细信息将保存到mysql表中。一旦用户登录到app,它将在此表中更新。所以现在我需要在nagios上打印"CRITICAL“状态,如果应用程序上两天没有活动,否则在nagios上打印"OK”状态。可以用nagios实现吗?
任何帮助都将不胜感激。
提前感谢
发布于 2014-10-09 14:38:37
是的,这是可能的。让服务对数据库运行查询,以计算自上次更新以来的天数。如果>2,则将服务设置为CRITICAL。
发布于 2016-03-17 15:17:17
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; 发布于 2016-01-21 19:17:17
您可以创建一个脚本sh来连接到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;
fihttps://stackoverflow.com/questions/25842552
复制相似问题