from nodequery import verify,query_to_dict,node_select
-import syncplcdb
-from nodecommon import *
+from monitor.common import *
from monitor import config
-from monitor.wrapper import plc
+from monitor.wrapper import plc,plccache
from monitor.const import MINUP
-from monitor.database import FindbadNodeRecord, HistoryNodeRecord
+from monitor.database.info.model import FindbadNodeRecord, HistoryNodeRecord
+from monitor.database.dborm import mon_session as session
-from unified_model import *
+from monitor.model import *
api = plc.getAuthAPI()
def main(config):
- l_nodes = syncplcdb.create_plcdb()
- l_plcnodes = database.dbLoad("l_plcnodes")
+ l_plcnodes = plccache.l_nodes
l_nodes = get_nodeset(config)
checkAndRecordState(l_nodes, l_plcnodes)
try:
# Find the most recent record
noderec = FindbadNodeRecord.query.filter(FindbadNodeRecord.hostname==nodename).order_by(FindbadNodeRecord.date_checked.desc()).first()
- print "NODEREC: ", noderec.date_checked
+ #print "NODEREC: ", noderec.date_checked
except:
print "COULD NOT FIND %s" % nodename
import traceback
print traceback.print_exc()
continue
+ if not noderec:
+ print "none object for %s"% nodename
+ continue
+
node_state = noderec.observed_status
if noderec.plc_node_stats:
boot_state = noderec.plc_node_stats['boot_state']
# replace with another operations that also commits all pending ops, such
# as session.commit() or flush() or something
print HistoryNodeRecord.query.count()
+ session.flush()
return True