Fix bug 1884 MON openstack token optimization
[osm/MON.git] / osm_mon / collector / infra_collectors / base_osinfra.py
index 7ea453d..6926447 100644 (file)
@@ -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)
@@ -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("3", 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