X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=findbadpcu.py;h=c6e6a8f5fa83268a2208c16de4906d681685b579;hb=6233dbd2ecae5d7d12b033a2c64175038c626626;hp=815a77ec7a227676c6ee205440ab30f10afbcee8;hpb=4df3989d4aee44cb6e36169ac69ba097436f7b15;p=monitor.git diff --git a/findbadpcu.py b/findbadpcu.py index 815a77e..c6e6a8f 100755 --- a/findbadpcu.py +++ b/findbadpcu.py @@ -13,9 +13,8 @@ import threadpool import threading import monitor -from pcucontrol import reboot from monitor import config -from monitor.database.info.model import FindbadPCURecordSync, FindbadPCURecord, session +from monitor.database.info.model import FindbadPCURecord, session from monitor import database from monitor import util from monitor.wrapper import plc, plccache @@ -44,10 +43,11 @@ def checkPCUs(l_pcus, cohash): # CREATE all the work requests for pcuname in l_pcus: pcu_id = int(pcuname) - fbnodesync = FindbadPCURecordSync.findby_or_create(plc_pcuid=pcu_id, if_new_set={'round' : 0}) - fbnodesync.flush() + #fbnodesync = FindbadPCURecordSync.findby_or_create(plc_pcuid=pcu_id, if_new_set={'round' : 0}) + #fbnodesync.flush() - node_round = fbnodesync.round + #node_round = fbnodesync.round + node_round = global_round - 1 if node_round < global_round or config.force: # recreate node stats when refreshed #print "%s" % nodename @@ -76,7 +76,7 @@ def checkPCUs(l_pcus, cohash): print "All results collected." break - print FindbadPCURecordSync.query.count() + #print FindbadPCURecordSync.query.count() print FindbadPCURecord.query.count() session.flush() @@ -87,10 +87,10 @@ def main(): l_pcus = plccache.l_pcus cohash = {} - fbsync = FindbadPCURecordSync.findby_or_create(plc_pcuid=0, - if_new_set={'round' : global_round}) + #fbsync = FindbadPCURecordSync.findby_or_create(plc_pcuid=0, + #if_new_set={'round' : global_round}) - global_round = fbsync.round + #global_round = fbsync.round api = plc.getAuthAPI() if config.site is not None: @@ -140,8 +140,8 @@ def main(): if config.increment: # update global round number to force refreshes across all nodes - fbsync.round = global_round - fbsync.flush() + #fbsync.round = global_round + #fbsync.flush() session.flush() return 0 @@ -164,6 +164,7 @@ if __name__ == '__main__': pcuid=None, pcuselect=None, site=None, + sitelist=None, dbname="findbadpcus", cachenodes=False, cachecalls=True, @@ -173,6 +174,8 @@ if __name__ == '__main__': help="Provide the input file for the node list") parser.add_option("", "--site", dest="site", metavar="FILE", help="Get all pcus associated with the given site's nodes") + parser.add_option("", "--sitelist", dest="sitelist", metavar="FILE", + help="Get all pcus associated with the given site's nodes") parser.add_option("", "--pcuselect", dest="pcuselect", metavar="FILE", help="Query string to apply to the findbad pcus") parser.add_option("", "--pcuid", dest="pcuid", metavar="id", @@ -203,6 +206,8 @@ if __name__ == '__main__': time.sleep(1) except Exception, err: traceback.print_exc() + from monitor.common import email_exception + email_exception() print "Exception: %s" % err print "Saving data... exitting." sys.exit(0)