From 93186b81fa46c6eaed73a687f08552759bab765b Mon Sep 17 00:00:00 2001 From: steve Date: Thu, 29 Jun 2017 15:32:30 -0500 Subject: [PATCH] comments & documentation --- src/api/index.py | 40 +++++++++++++++++++++++++++++++++++++--- 1 file changed, 37 insertions(+), 3 deletions(-) diff --git a/src/api/index.py b/src/api/index.py index 08f408a..b760978 100644 --- a/src/api/index.py +++ b/src/api/index.py @@ -50,6 +50,10 @@ factory = DataSourceFactory() @app.route('/1/get/apps') def get_apps(): + """ + This function returns the labels of applications for every node registered + e.g: apps@zulu.org + """ r = [] try: gReader = factory.instance(type=class_read,args=p) @@ -59,6 +63,11 @@ def get_apps(): return json.dumps(r) @app.route('/1/get/summary/') def get_summary(id): + """ + This function returns the summary i.e an overall assessment of resource usage + It will pull information out of the user's data-store (database & document) specified in the configuration + @param id {app_resources|app_status|folder_size} + """ r = [] try: gReader = factory.instance(type=class_read,args=p) @@ -77,7 +86,10 @@ def get_summary(id): @app.route("/1/sys/usage/trend") def get_usage_trend(): """ - This function returns trends for the 24 most recent observations in the logs + + This function returns cpu/memory usage for the entire system being monitored. It will return the 24 most recent observations in the logs + No parameters should be passed. + @return {memory_usage:[],cpu_usage:[],app_count:value,memory_available:[]} """ r = {} try: @@ -91,7 +103,12 @@ def get_usage_trend(): def get_usage_detail(): """ - This function returns trends for the 24 most recent observations in the logs + This function returns detailed information about usage per application monitored. It will return the 24 most recent observations in the logs + No parameters should be passed + @return {app_1:{memory_usage:[],cpu_usage:[]},app_2:{memory_usage:[],cpu_usage:[]},...} + @TODO: + - add node references because if the same application lives on other nodes the info will be overriden + - parameters to be passed will be the node information """ r = {} try: @@ -100,7 +117,24 @@ def get_usage_detail(): except Exception,e: print (e) return json.dumps(r) - +@app.route('/1/app/status/') +def app_status(id) : + """ + This function aggregates the number of crashes/running/idle instances found in the past 24 log entries + @TODO: The back-end doesn't allow nodes to be specified + @param id node that contains an app + """ + r = [] + try: + gReader = factory.instance(type=class_read,args=p) + r = gReader.view('summary/app_status_details',key=p['uid']) + # + #@TODO: Once the back-end enables the nodes in which the application is running, uncomment the line below + # + #r = r[id] + except Exception,e: + print e + return r @app.route('/get/') def procs(id): try: