#from monitor.database.zabbixapi.model import *
from monitor_xmlrpc import MonitorXmlrpcServer
from controllers_local import LocalExtensions
+from pcucontrol.reboot import pcu_name
from monitor import util
from monitor import reboot
from monitorweb.templates.links import *
+def session_clear_all():
+ session.flush()
+ try:
+ session.expunge_all()
+ except AttributeError: # SQLAlchemy < 0.5.1
+ session.clear()
+
class ObjectQueryFields(widgets.WidgetsList):
"""The WidgetsList defines the fields of the form."""
pass
def format_pcu_shortstatus(pcu):
status = "error"
if pcu:
- if pcu.reboot_trial_status == str(0):
+ if pcu.reboot_trial_status == str(0) or pcu.reboot_trial_status == "Test: No error":
status = "Ok"
elif pcu.reboot_trial_status == "NetDown" or pcu.reboot_trial_status == "Not_Run":
status = pcu.reboot_trial_status
agg.ports = format_ports(pcu.port_status, pcu.plc_pcu_stats['model'])
agg.status = format_pcu_shortstatus(pcu)
+ agg.pcu_name = pcu_name(pcu.plc_pcu_stats)
#print pcu.entry_complete
agg.entry_complete_str = pcu.entry_complete
def nodeslow(self, filter='boot'):
print "NODE------------------"
print "befor-len: ", len( [ i for i in session] )
- session.flush(); session.clear()
+ session_clear_all()
print "after-len: ", len( [ i for i in session] )
fbquery = FindbadNodeRecord.get_all_latest()
query = []
def pre_view(self, **data):
- session.flush(); session.clear()
+ session_clear_all()
loginbase=None
loginbase_list=[]
for pcuid_key in pcus:
pcuquery += [pcus[pcuid_key]]
+ #for a in nodequery:
+ # print type(a.node)
+ # print type(a.node.hostname)
+ nodequery.sort(lambda a,b: cmp(a.node.hostname,b.node.hostname))
+ pcuquery.sort(lambda a,b: cmp(a.pcu_name,b.pcu_name))
+
actionlist_widget = ActionListWidget(template='monitorweb.templates.actionlist_template')
return dict(sitequery=sitequery, pcuquery=pcuquery, nodequery=nodequery, actions=actions_list, actionlist_widget=actionlist_widget, since=since, exceptions=exceptions)
@expose(template="monitorweb.templates.pcuview")
@exception_handler(nodeaction_handler,"isinstance(tg_exceptions,RuntimeError)")
def pcuviewold(self, loginbase=None, pcuid=None, hostname=None, since=20, **data):
- session.flush(); session.clear()
+ session_clear_all()
sitequery=[]
pcuquery=[]
nodequery=[]
def pcu(self, filter='all'):
print "PCUVIEW------------------"
print "befor-len: ", len( [ i for i in session] )
- session.flush(); session.clear()
+ session_clear_all()
print "after-len: ", len( [ i for i in session] )
fbquery = FindbadPCURecord.get_all_latest()
query = []
def site(self, filter='all'):
print "SITE------------------"
print "befor-len: ", len( [ i for i in session] )
- session.flush(); session.clear()
+ session_clear_all()
print "after-len: ", len( [ i for i in session] )
filtercount = {'good' : 0, 'down': 0, 'online':0, 'offline' : 0, 'new' : 0, 'pending' : 0, 'all' : 0}
fbquery = HistorySiteRecord.query.all()