def slice_info(request, parameter): all_values = [] server_ip = util.SERVER_IP server_port = util.SERVER_PORT slice_id = parameter slivers = getview.get_view_slice_id_all_slivers_most_recent(slice_id) count = 0 for container in slivers: sliver= container count +=1 sliver_name = documentparser.get_value(sliver, 'sliver_name') sliver_cpu_usage = documentparser.get_value(sliver,'sliver_cpu_usage') sliver_slice_name = documentparser.get_value(sliver, 'sliver_slice_name') sliver_total_memory = documentparser.get_value(sliver, 'sliver_total_memory') sliver_total_memory_free = documentparser.get_value(sliver, 'sliver_total_memory_free') sliver_total_memory_percent_used = documentparser.get_value(sliver, 'sliver_total_memory_percent_used') nodeid = documentparser.get_value(sliver, "nodeid") sliver_total_memory, sliver_total_memory_free = util.convert_bytes_to_human_readable([sliver_total_memory, sliver_total_memory_free]) all_values.append({'sliver_name': sliver_name, 'sliver_cpu_usage':sliver_cpu_usage, 'sliver_slice_name':sliver_slice_name, 'sliver_total_memory':sliver_total_memory, 'sliver_total_memory_free': sliver_total_memory_free, 'sliver_total_memory_percent_used':sliver_total_memory_percent_used, 'serial':count, 'nodeid': nodeid}) # Populate Treemap graph values = getview.get_view_slice_most_recent_attribute_treemap( slice_id, 'sliver_cpu_usage') values_graph = json.dumps(values) return render_to_response('sliceinfo.html',{'server_ip': server_ip, 'server_port': server_port,'all_values':all_values, 'values_graph': values_graph},context_instance=RequestContext(request))
def get_view_all_nodes_most_recent(): log.debug("Get most recent view for all nodes") db = store.get_bucket() all_values = {} view_by_node_most_recent = db.view('_design/node-mostrecent/_view/get_node-mostrecent', include_docs= True) for node in view_by_node_most_recent: json_value = node['doc'] document = json_value['json'] name = documentparser.get_value(document, "name") nodeid = documentparser.get_value(document, "nodeid") disk_size = documentparser.get_value(document, "disk_size") load_avg_1min = documentparser.get_value(document, "load_avg_1min") memory_percent_used = documentparser.get_value(document, "memory_percent_used") uptime_secs = documentparser.get_value(document, "uptime") last_updated = documentparser.return_server_time(document) total_memory = documentparser.get_value(document,"total_memory") num_cpu = documentparser.get_value(document, "number_of_cpus") cpu_usage = documentparser.get_value(document, "total_cpu_usage") data_sent= documentparser.get_value(document, "network_total_bytes_sent_last_sec") data_received = documentparser.get_value(document, "network_total_bytes_received_last_sec") ## Human readability###### uptime = util.convert_secs_to_time_elapsed(uptime_secs) disk_size,total_memory,data_sent, data_received = util.convert_bytes_to_human_readable([disk_size,total_memory, data_sent, data_received]) all_values.update({nodeid:{'num_cpu': num_cpu, 'percent_usage': cpu_usage , 'last_updated': last_updated , 'name':name, 'total_memory': total_memory , 'disk_size':disk_size, 'load_avg_1min':load_avg_1min, 'memory_percent_used':memory_percent_used, 'data_sent':data_sent, 'data_received':data_received, 'uptime':uptime}}) return all_values
def node_slivers (request, parameter): server_ip = util.SERVER_IP server_port = util.SERVER_PORT all_values = [] values_graph = [] network_values = [] disk_values = [] memory_values=[] node_in_db = False name= parameter node_id = parameter document = fetchdocument.fetch_most_recent_document(node_id) slivers = documentparser.get_value(document, 'slivers') print " NODE ID: ", node_id count = 0 if(document): node_in_db = True if slivers: for container in slivers: sliver= slivers[container] count +=1 sliver_name = documentparser.get_value(sliver, 'sliver_name') sliver_cpu_usage = documentparser.get_value(sliver,'sliver_cpu_usage') sliver_slice_name = documentparser.get_value(sliver, 'sliver_slice_name') sliver_total_memory = documentparser.get_value(sliver, 'sliver_total_memory') sliver_total_memory_free = documentparser.get_value(sliver, 'sliver_total_memory_free') sliver_total_memory_percent_used = documentparser.get_value(sliver, 'sliver_total_memory_percent_used') sliver_ip = documentparser.get_value(sliver, 'sliver_ip') sliver_state = documentparser.get_value(sliver, 'sliver_state') sliver_total_memory, sliver_total_memory_free = util.convert_bytes_to_human_readable([sliver_total_memory, sliver_total_memory_free]) all_values.append({'sliver_name': sliver_name, 'sliver_cpu_usage':sliver_cpu_usage, 'sliver_slice_name':sliver_slice_name, 'sliver_total_memory':sliver_total_memory, 'sliver_total_memory_free': sliver_total_memory_free, 'sliver_total_memory_percent_used':sliver_total_memory_percent_used, 'sliver_ip':sliver_ip, 'sliver_state': sliver_state,'serial':count}) # Populate Treemap graph values = getview.get_view_sliver_most_recent_attribute_treemap( node_id, 'sliver_cpu_usage') values_graph = json.dumps(values) #Network Values name = documentparser.get_value(document, "name") nodeid = documentparser.get_value(document, "nodeid") network_values= documentparser.get_set(document, "network") #Disk Values disk_values= documentparser.get_set(document, "disk") #Disk Values memory_values= documentparser.get_set(document, "memory") return render_to_response('node_slivers.html',{'disk_values':disk_values, 'all_values':all_values, 'values_graph':values_graph, 'network_values':network_values,'nodeid':node_id, 'name':name, 'server_ip': server_ip, 'server_port': server_port, 'numberslivers': count, 'node_in_db':node_in_db, 'memory_values': memory_values}, context_instance=RequestContext(request))