import time
import struct
-from pcucontrol import reboot
-
+from monitor import reboot
from monitor import util
from monitor import database
from monitor.wrapper import plc, plccache
-from datetime import datetime
+from datetime import datetime, timedelta
from monitor.model import PersistFlags, Message
esc = struct.pack('i', 27)
def email_exception(content=None):
import config
- from unified_model import Message
+ from monitor.model import Message
import traceback
msg=traceback.format_exc()
if content:
m=Message("exception running monitor", msg, False)
m.send([config.cc_email])
return
+
+def changed_lessthan(last_changed, days):
+ if datetime.now() - last_changed <= timedelta(days):
+ #print "last changed less than %s" % timedelta(days)
+ return True
+ else:
+ #print "last changed more than %s" % timedelta(days)
+ return False
+
+def changed_greaterthan(last_changed, days):
+ if datetime.now() - last_changed > timedelta(days):
+ #print "last changed more than %s" % timedelta(days)
+ return True
+ else:
+ #print "last changed less than %s" % timedelta(days)
+ return False
+
+def found_within(recent_actions, action_type, within):
+ for action in recent_actions:
+ if action_type == action.action_type and \
+ datetime.now() - action.date_created < timedelta(within):
+ # recent action of given type.
+ #print "%s found_within %s in recent_actions from %s" % (action_type, timedelta(within), action.date_created)
+ return True
+
+ print "%s NOT found_within %s in recent_actions" % (action_type, timedelta(within) )
+ return False
+