#!/usr/bin/python
-import plc
+from monitor.wrapper import plc
api = plc.getAuthAPI()
-import database
-import reboot
+from monitor import database
import time
-from model import *
-from nodecommon import *
+from monitor.common import *
-import util.file
-
-import parser as parsermodule
+from monitor import util
+from monitor import parser as parsermodule
+from monitor.model import *
parser = parsermodule.getParser()
help="")
config = parsermodule.parse_args(parser)
-from unified_model import *
def color_sitestatus(status):
if status == "good":
return green(status)
diff_time(plcsite['last_updated']))
print ""
- nodes = api.GetNodes(plcsite['node_ids'])
+ nodes = plccache.GetNodesByIds(plcsite['node_ids'])
print " Checked: %s" % time.ctime()
print "\t host | state | obs | created | updated | last_contact "
for plcnode in nodes:
- fbnode = fb['nodes'][plcnode['hostname']]['values']
+ fbnode = FindbadNodeRecord.get_latest_by(hostname=plcnode['hostname']).to_dict()
plcnode['state'] = color_boot_state(get_current_state(fbnode))
print "\t %37s | %5s | %5s | %11.11s | %11.11s | %12s " % \
(plcnode['hostname'], color_boot_state(plcnode['boot_state']), plcnode['state'],
diff_time(plcnode['last_contact']))
-fb = database.dbLoad("findbad")
act_all = database.dbLoad("act_all")
for site in config.args:
config.site = site
- plc_siteinfo = api.GetSites({'login_base': config.site})[0]
+ plc_siteinfo = plccache.GetSitesByName([config.site])
url = "https://www.planet-lab.org/db/sites/index.php?site_pattern="
plc_siteinfo['url'] = url + plc_siteinfo['login_base']
# rerun findbad with the nodes in the given nodes.
import os
file = "findbad.txt"
- nodes = api.GetNodes(plc_siteinfo['node_ids'], ['hostname'])
+ nodes = plccache.GetNodesByIds(plc_siteinfo['node_ids'])
nodes = [ n['hostname'] for n in nodes ]
util.file.setFileFromList(file, nodes)
os.system("./findbad.py --cachenodes --debug=0 --dbname=findbad --increment --nodelist %s" % file)