From 918528c7c4bf21956b8eaba4d599fed998d8c345 Mon Sep 17 00:00:00 2001 From: Stephen Soltesz Date: Tue, 31 Mar 2009 21:27:49 +0000 Subject: [PATCH] added --node option throughout calls fixed a typo --- findbadpcu.py | 12 ++++++++++++ pcubad.py | 15 +++++++++++++-- sitebad.py | 8 +++++--- web/MonitorWeb/monitorweb/controllers.py | 1 + 4 files changed, 31 insertions(+), 5 deletions(-) diff --git a/findbadpcu.py b/findbadpcu.py index c6e6a8f..893c2b7 100755 --- a/findbadpcu.py +++ b/findbadpcu.py @@ -101,6 +101,15 @@ def main(): pcus += node['pcu_ids'] # clear out dups. l_pcus = [pcu for pcu in sets.Set(pcus)] + + elif config.node is not None: + l_nodes = api.GetNodes(config.node, ['pcu_ids']) + pcus = [] + for node in l_nodes: + pcus += node['pcu_ids'] + # clear out dups. + l_pcus = [pcu for pcu in sets.Set(pcus)] + elif config.sitelist: site_list = config.sitelist.split(',') @@ -164,6 +173,7 @@ if __name__ == '__main__': pcuid=None, pcuselect=None, site=None, + node=None, sitelist=None, dbname="findbadpcus", cachenodes=False, @@ -172,6 +182,8 @@ if __name__ == '__main__': ) parser.add_option("-f", "--nodelist", dest="nodelist", metavar="FILE", help="Provide the input file for the node list") + parser.add_option("", "--node", dest="node", metavar="FILE", + help="Get all pcus associated with the given node") 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", diff --git a/pcubad.py b/pcubad.py index 0ce1a9e..16a8f4f 100755 --- a/pcubad.py +++ b/pcubad.py @@ -38,6 +38,15 @@ def main2(config): pcus += node['pcu_ids'] # clear out dups. l_pcus = [pcu for pcu in sets.Set(pcus)] + + elif config.node: + l_nodes = api.GetNodes(config.node, ['pcu_ids']) + pcus = [] + for node in l_nodes: + pcus += node['pcu_ids'] + # clear out dups. + l_pcus = [pcu for pcu in sets.Set(pcus)] + elif config.pcu: for pcu in l_plcpcus: if ( pcu['hostname'] is not None and config.pcu in pcu['hostname'] ) or \ @@ -131,11 +140,13 @@ def checkAndRecordState(l_pcus, l_plcpcus): if __name__ == '__main__': parser = parsermodule.getParser() - parser.set_defaults(filename=None, pcu=None, site=None, pcuselect=False, pcugroup=None, cachepcus=False) + parser.set_defaults(filename=None, pcu=None, node=None, site=None, pcuselect=False, pcugroup=None, cachepcus=False) parser.add_option("", "--pcu", dest="pcu", metavar="hostname", help="Provide a single pcu to operate on") parser.add_option("", "--site", dest="site", metavar="sitename", help="Provide a single sitename to operate on") + parser.add_option("", "--node", dest="node", metavar="nodename", + help="Provide a single node to operate on") parser.add_option("", "--pculist", dest="pculist", metavar="file.list", help="Provide a list of files to operate on") @@ -145,6 +156,6 @@ if __name__ == '__main__': main2(config) except Exception, err: import traceback - print traceback.print_exc() + traceback.print_exc() print "Exception: %s" % err sys.exit(0) diff --git a/sitebad.py b/sitebad.py index 6d3c042..f90f887 100755 --- a/sitebad.py +++ b/sitebad.py @@ -9,7 +9,7 @@ from datetime import datetime,timedelta from monitor import database from monitor import parser as parsermodule from monitor import config -from monitor.database.info.model import HistorySiteRecord, HistoryNodeRecord, session +from monitor.database.info.model import HistorySiteRecord, HistoryNodeRecord, session, BlacklistRecord from monitor.wrapper import plc, plccache from monitor.const import MINUP @@ -28,6 +28,8 @@ def main2(config): if config.site: l_sites = [config.site] + elif config.node: + l_sites = [plccache.plcdb_hn2lb[config.node]] elif config.sitelist: site_list = config.sitelist.split(',') l_sites = site_list @@ -45,7 +47,7 @@ def getnodesup(nodelist): nodehist = HistoryNodeRecord.findby_or_create(hostname=node['hostname']) nodebl = BlacklistRecord.get_by(hostname=node['hostname']) if (nodehist is not None and nodehist.status != 'down') or \ - (nodebl is not None and not nodebl.expired(): + (nodebl is not None and not nodebl.expired()): up = up + 1 except: import traceback @@ -122,7 +124,7 @@ def checkAndRecordState(l_sites, l_plcsites): check_site_state(d_site, sitehist) count += 1 - print "%d %15s slices(%2s) nodes(%2s) up(%2s) %s" % (count, sitename, sitehist.slices_used, + print "%d %15s slices(%2s) nodes(%2s) notdown(%2s) %s" % (count, sitename, sitehist.slices_used, sitehist.nodes_total, sitehist.nodes_up, sitehist.status) sitehist.flush() diff --git a/web/MonitorWeb/monitorweb/controllers.py b/web/MonitorWeb/monitorweb/controllers.py index 774ad00..647c9e8 100644 --- a/web/MonitorWeb/monitorweb/controllers.py +++ b/web/MonitorWeb/monitorweb/controllers.py @@ -311,6 +311,7 @@ class Root(controllers.RootController): @expose(template="monitorweb.templates.pcuview") @exception_handler(nodeaction_handler,"isinstance(tg_exceptions,RuntimeError)") def pcuview(self, loginbase=None, pcuid=None, hostname=None, **data): + session.clear() sitequery=[] pcuquery=[] nodequery=[] -- 2.43.0