X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=src%2Femuvim%2Fapi%2Frest%2Frest_api_endpoint.py;h=7168f37b60ed4c754e46944fa2b36ac4a63cdae1;hb=5ec2cabc29fabd63769c96c60c8008182fc0ab72;hp=e382f5ab91ee4701de71f365682e01a1c8cbc873;hpb=5afa0714ecd0762b29f37df1b5679865839ece34;p=osm%2Fvim-emu.git diff --git a/src/emuvim/api/rest/rest_api_endpoint.py b/src/emuvim/api/rest/rest_api_endpoint.py index e382f5a..7168f37 100755 --- a/src/emuvim/api/rest/rest_api_endpoint.py +++ b/src/emuvim/api/rest/rest_api_endpoint.py @@ -39,7 +39,7 @@ import network from network import NetworkAction import monitor -from monitor import MonitorInterfaceAction, MonitorFlowAction +from monitor import MonitorInterfaceAction, MonitorFlowAction, MonitorLinkAction, MonitorSkewAction logging.basicConfig(level=logging.INFO) @@ -61,7 +61,10 @@ class RestApiEndpoint(object): # setup endpoints - self.api.add_resource(Compute, "/restapi/compute//") + # compute related actions (start/stop VNFs, get info) + self.api.add_resource(Compute, + "/restapi/compute//", + "/restapi/compute////") self.api.add_resource(ComputeList, "/restapi/compute", "/restapi/compute/") @@ -69,14 +72,30 @@ class RestApiEndpoint(object): self.api.add_resource(DatacenterStatus, "/restapi/datacenter/") self.api.add_resource(DatacenterList, "/restapi/datacenter") - self.api.add_resource(NetworkAction, "/restapi/network//", ) + # network related actions (setup chaining between VNFs) + self.api.add_resource(NetworkAction, + "/restapi/network//") + + + # monitoring related actions + # export a network interface traffic rate counter self.api.add_resource(MonitorInterfaceAction, - "/restapi/monitor//", - "/restapi/monitor///") + "/restapi/monitor/interface//", + "/restapi/monitor/interface///", + "/restapi/monitor/interface////") + # export flow traffic counter, of a manually pre-installed flow entry, specified by its cookie self.api.add_resource(MonitorFlowAction, - "/restapi/flowmon///", - "/restapi/flowmon////") + "/restapi/monitor/flow///", + "/restapi/monitor/flow////") + # install monitoring of a specific flow on a pre-existing link in the service. + # the traffic counters of the newly installed monitor flow are exported + self.api.add_resource(MonitorLinkAction, + "/restapi/monitor/link//") + # install skewness monitor of resource usage disribution + # the skewness metric is exported + self.api.add_resource(MonitorSkewAction, + "/restapi/monitor/skewness//") logging.debug("Created API endpoint %s(%s:%d)" % (self.__class__.__name__, self.ip, self.port))