X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=portal%2Fsliceview.py;h=b41e92cbee4003b59c231b5994f50f9dc6c4c688;hb=d3c4599bc7e78f9b01ebac0c39d919bf5a731212;hp=2f22789dede54adec4a957bc9eb5f13830045694;hpb=9b5bc9a851083b209d3296a7cae0fb67d05763b6;p=myslice.git diff --git a/portal/sliceview.py b/portal/sliceview.py index 2f22789d..b41e92cb 100644 --- a/portal/sliceview.py +++ b/portal/sliceview.py @@ -20,13 +20,15 @@ from plugins.query_editor import QueryEditor from plugins.active_filters import ActiveFilters from plugins.quickfilter import QuickFilter from plugins.messages import Messages +from plugins.slicestat import SliceStat from myslice.config import Config tmp_default_slice='ple.upmc.myslicedemo' # temporary : turn off the users part to speed things up -do_query_users=True +#do_query_users=True +do_query_users=False class SliceView (LoginRequiredAutoLogoutView): @@ -37,7 +39,8 @@ class SliceView (LoginRequiredAutoLogoutView): page.add_js_files ( [ "js/common.functions.js" ] ) page.add_js_chunks ('$(function() { messages.debug("sliceview: jQuery version " + $.fn.jquery); });') page.add_js_chunks ('$(function() { messages.debug("sliceview: users turned %s"); });'%("on" if do_query_users else "off")) - page.add_js_chunks ('$(function() { messages.debug("manifold URL %s"); });'%(Config.manifold_url())) + config=Config() + page.add_js_chunks ('$(function() { messages.debug("manifold URL %s"); });'%(config.manifold_url())) page.expose_js_metadata() metadata = page.get_metadata() @@ -172,7 +175,7 @@ class SliceView (LoginRequiredAutoLogoutView): }, ) - # with the new 'Filter' stuff on top, no need for anything but the hazelnut + # with the new 'Filter' stuff on top, no need for anything but the hazelnut resources_as_list_area = resources_as_list resources_area = Tabs ( page=page, @@ -180,12 +183,11 @@ class SliceView (LoginRequiredAutoLogoutView): togglable=True, title="Resources", outline_complete=True, - sons=[ resources_as_map, resources_as_list_area, ], + sons=[ resources_as_map, resources_as_list_area ], active_domid = 'resources-map', ) main_stack.insert (resources_area) - # -------------------------------------------------------------------------- # USERS @@ -216,52 +218,107 @@ class SliceView (LoginRequiredAutoLogoutView): 'bAutoWidth' : True, }, )) - + +# DEMO # -------------------------------------------------------------------------- # MEASUREMENTS - tab_measurements = Tabs ( - page = page, - active_domid = 'measurements-list', - outline_complete = True, - togglable = True, - title = 'Measurements', - domid = 'measurements', + measurements_stats_cpu = SliceStat( + title = "CPU Usage", + domid = 'resources-stats-cpu', + page = page, + stats = 'slice', + key = 'hrn', + query = 'none', + slicename = slicename, + o = 'cpu' ) - main_stack.insert(tab_measurements) - - tab_measurements.insert(Hazelnut( - page = page, - title = 'Measurements', - domid = 'measurements-list', - # tab's sons preferably turn this off - togglable = False, - # this is the query at the core of the slice list - query = sq_measurement, - # do NOT set checkboxes to False - # this table being otherwise empty, it just does not fly with dataTables - checkboxes = True, - datatables_options = { - 'iDisplayLength' : 25, - 'bLengthChange' : True, - 'bAutoWidth' : True, - }, - )) - - # -------------------------------------------------------------------------- - # MESSAGES (we use transient=False for now) - main_stack.insert(Messages( - page = page, - title = "Runtime messages for slice %s"%slicename, - domid = "msgs-pre", - levels = "ALL", - # plain messages are probably less nice for production but more reliable for development for now - transient = False, - # these make sense only in non-transient mode.. - togglable = True, - toggled = 'persistent', - outline_complete = True, - )) - + + measurements_stats_mem = SliceStat( + title = "Memory Usage", + domid = 'resources-stats-mem', + page = page, + stats = 'slice', + key = 'hrn', + query = 'none', + slicename = slicename, + o = 'mem' + ) + + measurements_stats_asb = SliceStat( + title = "Traffic Sent", + domid = 'resources-stats-asb', + page = page, + stats = 'slice', + key = 'hrn', + query = 'none', + slicename = slicename, + o = 'asb' + ) + + measurements_stats_arb = SliceStat( + title = "Traffic Received", + domid = 'resources-stats-arb', + page = page, + stats = 'slice', + key = 'hrn', + query = 'none', + slicename = slicename, + o = 'arb' + ) + + tab_measurements = Tabs ( page=page, + domid="measurements", + togglable=True, + title="Measurements", + outline_complete=True, + sons=[ measurements_stats_cpu, measurements_stats_mem, measurements_stats_asb, measurements_stats_arb ], + active_domid = 'measurements_stats_cpu', + ) + main_stack.insert (tab_measurements) + +# tab_measurements = Tabs ( +# page = page, +# active_domid = 'measurements-list', +# outline_complete = True, +# togglable = True, +# title = 'Measurements', +# domid = 'measurements', +# ) +# main_stack.insert(tab_measurements) +# +# tab_measurements.insert(Hazelnut( +# page = page, +# title = 'Measurements', +# domid = 'measurements-list', +# # tab's sons preferably turn this off +# togglable = False, +# # this is the query at the core of the slice list +# query = sq_measurement, +# # do NOT set checkboxes to False +# # this table being otherwise empty, it just does not fly with dataTables +# checkboxes = True, +# datatables_options = { +# 'iDisplayLength' : 25, +# 'bLengthChange' : True, +# 'bAutoWidth' : True, +# }, +# )) +# +# # -------------------------------------------------------------------------- +# # MESSAGES (we use transient=False for now) +# main_stack.insert(Messages( +# page = page, +# title = "Runtime messages for slice %s"%slicename, +# domid = "msgs-pre", +# levels = "ALL", +# # plain messages are probably less nice for production but more reliable for development for now +# transient = False, +# # these make sense only in non-transient mode.. +# togglable = True, +# toggled = 'persistent', +# outline_complete = True, +# )) +# # variables that will get passed to the view-unfold1.html template template_env = {}