|
@@ -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/<id>')
|
|
|
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/<id>')
|
|
|
+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/<id>')
|
|
|
def procs(id):
|
|
|
try:
|