X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=src%2Femuvim%2Fapi%2Frest%2Fmonitor.py;fp=src%2Femuvim%2Fapi%2Frest%2Fmonitor.py;h=c1c7831b2fd6315d6857c5a0cd8e1686fb6d3705;hb=b07fe3686a554b2bf520ae15397b091b2bc29d13;hp=490f5cc641d6c7124beae07ea061c550ec41dcca;hpb=5ec2cabc29fabd63769c96c60c8008182fc0ab72;p=osm%2Fvim-emu.git diff --git a/src/emuvim/api/rest/monitor.py b/src/emuvim/api/rest/monitor.py index 490f5cc..c1c7831 100755 --- a/src/emuvim/api/rest/monitor.py +++ b/src/emuvim/api/rest/monitor.py @@ -210,6 +210,39 @@ class MonitorLinkAction(Resource): # return setChain response return (str(c1) + " " + str(c2)), 200 + except Exception as ex: + logging.exception("API error.") + return ex.message, 500 + +class MonitorSkewAction(Resource): + """ + Monitor the counters of a VNF interface + :param vnf_name: name of the VNF to be monitored + :param resource: the resource to be monitored (cpu, mem, ...) + :return: message string indicating if the monitor action is succesful or not + """ + global net + + def put(self, vnf_name, resource_name='cpu'): + logging.debug("REST CALL: start monitor skewness") + try: + # configure skewmon + c = net.monitor_agent.update_skewmon(vnf_name, resource_name, action='start') + + # return monitor message response + return str(c), 200 + except Exception as ex: + logging.exception("API error.") + return ex.message, 500 + + def delete(self, vnf_name, resource_name='cpu'): + logging.debug("REST CALL: stop monitor skewness") + try: + # configure skewmon + c = net.monitor_agent.update_skewmon(vnf_name, resource_name, action='stop') + + # return monitor message response + return str(c), 200 except Exception as ex: logging.exception("API error.") return ex.message, 500 \ No newline at end of file