X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=src%2Femuvim%2Fapi%2Frest%2Frest_api_endpoint.py;h=fc48a333fa42870c02b1780a9a949609e7296840;hb=7953f2fa5e8041cb8abdcb376bfa0bc8b988f229;hp=7a0fc4f035df5241e33bb1d9ffae7b57ac64a5b5;hpb=4fac2afba3182039dae6216d267d13eb3b98a56f;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 7a0fc4f..fc48a33 100755 --- a/src/emuvim/api/rest/rest_api_endpoint.py +++ b/src/emuvim/api/rest/rest_api_endpoint.py @@ -32,14 +32,14 @@ from flask_restful import Api # need to import total module to set its global variable dcs import compute -from compute import dcs, ComputeList, Compute, DatacenterList, DatacenterStatus +from compute import dcs, ComputeList, Compute, ComputeResources, DatacenterList, DatacenterStatus # need to import total module to set its global variable net import network from network import NetworkAction import monitor -from monitor import MonitorInterfaceAction, MonitorFlowAction, MonitorLinkAction +from monitor import MonitorInterfaceAction, MonitorFlowAction, MonitorLinkAction, MonitorSkewAction logging.basicConfig(level=logging.INFO) @@ -61,28 +61,37 @@ class RestApiEndpoint(object): # setup endpoints - self.api.add_resource(Compute, - "/restapi/compute//", - "/restapi/compute////") + # compute related actions (start/stop VNFs, get info) + self.api.add_resource(Compute, "/restapi/compute//") self.api.add_resource(ComputeList, "/restapi/compute", "/restapi/compute/") + self.api.add_resource(ComputeResources, "/restapi/compute/resources//") self.api.add_resource(DatacenterStatus, "/restapi/datacenter/") self.api.add_resource(DatacenterList, "/restapi/datacenter") + + # network related actions (setup chaining between VNFs) self.api.add_resource(NetworkAction, - "/restapi/network//") + "/restapi/network") + + # monitoring related actions + # export a network interface traffic rate counter self.api.add_resource(MonitorInterfaceAction, - "/restapi/monitor/vnf//", - "/restapi/monitor/vnf///", - "/restapi/monitor/vnf////") + "/restapi/monitor/interface") + # export flow traffic counter, of a manually pre-installed flow entry, specified by its cookie self.api.add_resource(MonitorFlowAction, - "/restapi/monitor/flow///", - "/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//") + "/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))