git://git.onelab.eu
/
monitor.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
First of a series of significant changes to how monitor is organized.
[monitor.git]
/
web
/
MonitorWeb
/
monitorweb
/
controllers.py
diff --git
a/web/MonitorWeb/monitorweb/controllers.py
b/web/MonitorWeb/monitorweb/controllers.py
index
74b2770
..
68df2eb
100644
(file)
--- a/
web/MonitorWeb/monitorweb/controllers.py
+++ b/
web/MonitorWeb/monitorweb/controllers.py
@@
-11,6
+11,7
@@
import os
from monitor.database.info.model import *
#from monitor.database.zabbixapi.model import *
from monitor_xmlrpc import MonitorXmlrpcServer
from monitor.database.info.model import *
#from monitor.database.zabbixapi.model import *
from monitor_xmlrpc import MonitorXmlrpcServer
+from controllers_local import LocalExtensions
from monitor import util
from monitor import reboot
from monitor import util
from monitor import reboot
@@
-53,12
+54,13
@@
class NodeQueryFields(widgets.WidgetsList):
external_dns_status = widgets.CheckBox(label="Hostname Resolves?")
kernel_version = widgets.CheckBox(label="Kernel")
bootcd_version = widgets.CheckBox(label="BootCD")
external_dns_status = widgets.CheckBox(label="Hostname Resolves?")
kernel_version = widgets.CheckBox(label="Kernel")
bootcd_version = widgets.CheckBox(label="BootCD")
-
boot_server = widgets.CheckBox(label="Boot Server")
-
install_date = widgets.CheckBox(label="Installation Date")
+ boot_server = widgets.CheckBox(label="Boot Server")
+ install_date = widgets.CheckBox(label="Installation Date")
observed_status = widgets.CheckBox(label="Observed Status")
uptime = widgets.CheckBox(label="Uptime")
traceroute = widgets.CheckBox(label="Traceroute")
port_status = widgets.CheckBox(label="Port Status")
observed_status = widgets.CheckBox(label="Observed Status")
uptime = widgets.CheckBox(label="Uptime")
traceroute = widgets.CheckBox(label="Traceroute")
port_status = widgets.CheckBox(label="Port Status")
+ plc_pcuid = widgets.CheckBox(label="PCU ID")
rpms = widgets.CheckBox(label="RPM")
rpmvalue = widgets.TextField(label="RPM Pattern")
rpms = widgets.CheckBox(label="RPM")
rpmvalue = widgets.TextField(label="RPM Pattern")
@@
-264,7
+266,7
@@
def prep_node_for_display(node, pcuhash=None, preppcu=True, asofdate=None):
return agg
return agg
-class Root(controllers.RootController, MonitorXmlrpcServer):
+class Root(controllers.RootController, MonitorXmlrpcServer
, LocalExtensions
):
@expose(template="monitorweb.templates.welcome")
def index(self):
# log.debug("Happy TurboGears Controller Responding For Duty")
@expose(template="monitorweb.templates.welcome")
def index(self):
# log.debug("Happy TurboGears Controller Responding For Duty")
@@
-340,7
+342,10
@@
class Root(controllers.RootController, MonitorXmlrpcServer):
agg = node.__dict__.copy()
else:
agg = node.to_dict()
agg = node.__dict__.copy()
else:
agg = node.to_dict()
- agg.update(agg['plc_node_stats'])
+ if agg['plc_node_stats']:
+ agg.update(agg['plc_node_stats'])
+ if agg['install_date']:
+ agg['install_date'] = time.mktime(time.strptime(agg['install_date'], "%a %b %d %H:%M:%S %Y"))
if agg['kernel_version']:
agg['kernel_version'] = agg['kernel_version'].split()[2]
if 'traceroute' in data and agg['traceroute']:
if agg['kernel_version']:
agg['kernel_version'] = agg['kernel_version'].split()[2]
if 'traceroute' in data and agg['traceroute']:
@@
-348,7
+353,8
@@
class Root(controllers.RootController, MonitorXmlrpcServer):
if 'rpmvalue' in data and 'rpms' in data:
if agg['rpms']:
rpm_list = agg['rpms'].split()
if 'rpmvalue' in data and 'rpms' in data:
if agg['rpms']:
rpm_list = agg['rpms'].split()
- rpm_list = filter(lambda x: data['rpmvalue'] in x, rpm_list)
+ rpm_list = filter(lambda x: re.match(data['rpmvalue'], x, re.I),
+ rpm_list)
agg['rpms'] = " ".join(rpm_list)
query.append(agg)
agg['rpms'] = " ".join(rpm_list)
query.append(agg)
@@
-665,7
+671,7
@@
class Root(controllers.RootController, MonitorXmlrpcServer):
query = []
if pcu_id:
fbnode = HistoryPCURecord.get_by(plc_pcuid=pcu_id)
query = []
if pcu_id:
fbnode = HistoryPCURecord.get_by(plc_pcuid=pcu_id)
- l = fbnode.versions[-100:]
+ l = fbnode.versions[-100
0
:]
l.reverse()
for pcu in l:
#prep_node_for_display(node)
l.reverse()
for pcu in l:
#prep_node_for_display(node)
@@
-710,13
+716,15
@@
class Root(controllers.RootController, MonitorXmlrpcServer):
if loginbase:
fbsite = HistorySiteRecord.get_by(loginbase=loginbase)
# TODO: add links for earlier history if desired.
if loginbase:
fbsite = HistorySiteRecord.get_by(loginbase=loginbase)
# TODO: add links for earlier history if desired.
- l = fbsite.versions[-100:]
+ l = fbsite.versions[-100
0
:]
l.reverse()
for site in l:
query.append(site)
return dict(query=query, loginbase=loginbase)
l.reverse()
for site in l:
query.append(site)
return dict(query=query, loginbase=loginbase)
+ @expose("cheetah:monitorweb.templates.pculist_plain", as_format="plain",
+ accept_format="text/plain", content_type="text/plain")
@expose(template="monitorweb.templates.pculist")
def pcu(self, filter='all'):
print "PCUVIEW------------------"
@expose(template="monitorweb.templates.pculist")
def pcu(self, filter='all'):
print "PCUVIEW------------------"
@@
-894,3
+902,4
@@
class Root(controllers.RootController, MonitorXmlrpcServer):
print "redirecting 3"
return dict()
print "redirecting 3"
return dict()
+