X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=osm_mon%2Fcollector%2Finfra_collectors%2Fbase_osinfra.py;h=1b5531d38d7de98aff61e6aeec0d13f9d5dbf11a;hb=4b4749e2c18d124cc03a8d408ac79d18ed628a3e;hp=74ad095ccdff923264fad1a5e8c18b41a714f14b;hpb=c5bf83e7c59366e0ca0afe94d24f71bcdc123cfc;p=osm%2FMON.git diff --git a/osm_mon/collector/infra_collectors/base_osinfra.py b/osm_mon/collector/infra_collectors/base_osinfra.py index 74ad095..1b5531d 100644 --- a/osm_mon/collector/infra_collectors/base_osinfra.py +++ b/osm_mon/collector/infra_collectors/base_osinfra.py @@ -42,7 +42,8 @@ class BaseOpenStackInfraCollector(BaseVimInfraCollector): self.conf = config self.common_db = CommonDbClient(config) self.vim_account = self.common_db.get_vim_account(vim_account_id) - self.keystone = self._build_keystone_client(self.vim_account) + # self.keystone = self._build_keystone_client(self.vim_account) + self.vim_session = None self.nova = self._build_nova_client(self.vim_account) self.cinder = self._build_cinder_client(self.vim_account) self.neutron, self.tenant_id = self._build_neutron_client(self.vim_account) @@ -80,15 +81,15 @@ class BaseOpenStackInfraCollector(BaseVimInfraCollector): tags = { "vim_account_id": self.vim_account["_id"], "resource_uuid": resource_uuid, - "nsr_id": nsr_id, + "ns_id": nsr_id, "ns_name": ns_name, "vnf_member_index": vnf_member_index, - "vdur_name": vdur.get("name", ""), + "vdu_name": vdur.get("name", ""), "project_id": vnfr_project_id, } try: vm = self.nova.servers.get(resource_uuid) - vm_status = 1 if vm.status == "ACTIVE" else 0 + vm_status = (0 if (vm.status == 'ERROR') else 1) vm_status_metric = Metric(tags, "vm_status", vm_status) except Exception as e: log.warning("VM status is not OK: %s" % e) @@ -177,13 +178,14 @@ class BaseOpenStackInfraCollector(BaseVimInfraCollector): def _build_nova_client(self, vim_account: dict) -> nova_client.Client: sess = OpenstackUtils.get_session(vim_account) + self.vim_session = sess return nova_client.Client("2", session=sess, timeout=10) def _build_cinder_client(self, vim_account: dict) -> cinder_client.Client: - sess = OpenstackUtils.get_session(vim_account) - return cinder_client.Client("2", session=sess, timeout=10) + # sess = OpenstackUtils.get_session(vim_account) + return cinder_client.Client("3", session=self.vim_session, timeout=10) def _build_neutron_client(self, vim_account: dict) -> tuple: - sess = OpenstackUtils.get_session(vim_account) - tenant_id = sess.get_project_id() - return neutron_client.Client("2", session=sess, timeout=10), tenant_id + # sess = OpenstackUtils.get_session(vim_account) + tenant_id = self.vim_session.get_project_id() + return neutron_client.Client("2", session=self.vim_session, timeout=10), tenant_id