# log = logging.getLogger("monitorweb.controllers")
import re
from monitor.database.info.model import *
-from monitor.database.zabbixapi.model import *
-from monitor.database.dborm import zab_session as session
-from monitor.database.dborm import zab_metadata as metadata
+#from monitor.database.zabbixapi.model import *
+#from monitor.database.dborm import zab_session as session
+#from monitor.database.dborm import zab_metadata as metadata
from monitor_xmlrpc import MonitorXmlrpcServer
from monitor import reboot
if node.site is None:
# TODO: need a cleaner fix for this...
node.site = HistorySiteRecord.by_loginbase("pl")
+ if not node.site:
+ node.site = HistorySiteRecord.by_loginbase("ple")
node.history = HistoryNodeRecord.by_hostname(node.hostname)
def nodeview(self, hostname=None):
nodequery=[]
if hostname:
- for node in FindbadNodeRecord.get_latest_by(hostname=hostname):
- # NOTE: reformat some fields.
- prep_node_for_display(node)
- nodequery += [node]
+ node = FindbadNodeRecord.get_latest_by(hostname=hostname)
+ # NOTE: reformat some fields.
+ prep_node_for_display(node)
+ nodequery += [node]
return self.pcuview(None, None, hostname) # dict(nodequery=nodequery)
# NOTE: reformat some fields.
prep_node_for_display(node)
- node.history.status
+ #node.history.status
+ print node.hostname
if node.history.status in ['down', 'offline']:
if node.plc_node_stats and node.plc_node_stats['last_contact'] != None:
elif node.history.status in ['debug', 'monitordebug']:
filtercount['debug'] += 1
else:
- filtercount[node.history.status] += 1
+ # TODO: need a better fix. filtercount
+ # doesn't maps to GetBootStates() on
+ # 4.3 so this one fails quite often.
+ if filtercount.has_key(node.history.status):
+ filtercount[node.history.status] += 1
## NOTE: count filters
#if node.observed_status != 'DOWN':
@exception_handler(nodeaction_handler,"isinstance(tg_exceptions,RuntimeError)")
def pcuview(self, loginbase=None, pcuid=None, hostname=None, **data):
print "PCUVIEW------------------"
- session.clear()
+ print "befor-len: ", len( [ i for i in session] )
+ session.flush(); session.clear()
+ print "after-len: ", len( [ i for i in session] )
sitequery=[]
pcuquery=[]
nodequery=[]
if loginbase:
actions = ActionRecord.query.filter_by(loginbase=loginbase
- ).filter(ActionRecord.date_created >= datetime.now() - timedelta(7)
+ ).filter(ActionRecord.date_created >= datetime.now() - timedelta(14)
).order_by(ActionRecord.date_created.desc())
actions = [ a for a in actions ]
sitequery = [HistorySiteRecord.by_loginbase(loginbase)]
def nodehistory(self, hostname=None):
query = []
if hostname:
- fbnode = FindbadNodeRecord.get_by(hostname=hostname)
- # TODO: add links for earlier history if desired.
+ #fbnode = FindbadNodeRecord.get_by(hostname=hostname)
+ ## TODO: add links for earlier history if desired.
+ #l = fbnode.versions[-100:]
+ #l.reverse()
+ #for node in l:
+ # prep_node_for_display(node)
+ # query.append(node)
+
+ fbnode = HistoryNodeRecord.get_by(hostname=hostname)
l = fbnode.versions[-100:]
l.reverse()
for node in l:
- prep_node_for_display(node)
+ #prep_node_for_display(node)
query.append(node)
+
return dict(query=query, hostname=hostname)
@expose(template="monitorweb.templates.sitehistory")