+ def prometheus_zrpc(self, args):\r
+ vnf_name = self._parse_vnf_name(args.get("vnf_name"))\r
+ vnf_interface = self._parse_vnf_interface(args.get("vnf_name"))\r
+ r = self.c.prometheus(\r
+ args.get("datacenter"),\r
+ vnf_name,\r
+ vnf_interface,\r
+ args.get("query"))\r
+ pp.pprint(r)\r
+\r
+ def prometheus(self, args):\r
+ vnf_name = self._parse_vnf_name(args.get("vnf_name"))\r
+ vnf_interface = self._parse_vnf_interface(args.get("vnf_name"))\r
+ dc_label = args.get("datacenter")\r
+ query = args.get("query")\r
+ vnf_status = self.compute_api.compute_status(dc_label, vnf_name)\r
+ uuid = vnf_status['id']\r
+ query = query.replace('<uuid>', uuid)\r
+\r
+ r = prometheus.query_Prometheus(query)\r
+ pp.pprint(r)\r
+\r
+\r
+ def _parse_vnf_name(self, vnf_name_str):\r
+ vnf_name = vnf_name_str.split(':')[0]\r
+ return vnf_name\r
+\r
+ def _parse_vnf_interface(self, vnf_name_str):\r
+ try:\r
+ vnf_interface = vnf_name_str.split(':')[1]\r
+ except:\r
+ vnf_interface = None\r
+\r
+ return vnf_interface\r
+\r
+parser = argparse.ArgumentParser(description='son-emu monitor')\r