X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=o2ims%2Fentrypoints%2Fresource_watcher.py;h=9e1748534ab0bdfe72ace447a18b73548c42be4f;hb=19ee63847f8eb032009e63634b90eb594f3c0408;hp=a3292df0dbae1fed0db39b9843cf747c437a8de4;hpb=8be81dfad35b08c4de77168e885bb18253069771;p=pti%2Fo2.git diff --git a/o2ims/entrypoints/resource_watcher.py b/o2ims/entrypoints/resource_watcher.py index a3292df..9e17485 100644 --- a/o2ims/entrypoints/resource_watcher.py +++ b/o2ims/entrypoints/resource_watcher.py @@ -15,18 +15,27 @@ import cotyledon from o2ims.service.watcher.worker import PollWorker -from o2ims.service.watcher.base import OcloudWatcher -from o2ims.service.watcher.base import DmsWatcher -# from o2ims.service.client.base_client import BaseClient +from o2ims.service.watcher.ocloud_watcher import OcloudWatcher +from o2ims.service.watcher.ocloud_watcher import DmsWatcher +from o2ims.service.watcher.resourcepool_watcher import ResourcePoolWatcher from o2ims.adapter.clients.ocloud_sa_client import StxSaDmsClient from o2ims.adapter.clients.ocloud_sa_client import StxSaOcloudClient +from o2ims.adapter.clients.ocloud_sa_client import StxSaResourcePoolClient + +from o2ims.service.watcher.pserver_watcher import PServerWatcher +from o2ims.adapter.clients.ocloud_sa_client import StxPserverClient + +from o2ims.service.watcher.pserver_cpu_watcher import PServerCpuWatcher +from o2ims.adapter.clients.ocloud_sa_client import StxCpuClient + +from o2ims.service.watcher.base import WatcherTree from o2ims import bootstrap # from o2ims import config # import redis -import logging -logger = logging.getLogger(__name__) +from o2common.helper import o2logging +logger = o2logging.get_logger(__name__) # r = redis.Redis(**config.get_redis_host_and_port()) @@ -37,16 +46,24 @@ class WatcherService(cotyledon.Service): self.args = args self.bus = bootstrap.bootstrap() self.worker = PollWorker() - # self.stxrepo = self.bus.uow.stxobjects - # tbd: 1 client per resource pool - # self.client = StxSaOcloudClient() def run(self): try: - self.worker.add_watcher(OcloudWatcher(StxSaOcloudClient(), - self.bus.uow)) - self.worker.add_watcher(DmsWatcher(StxSaDmsClient(), - self.bus.uow)) + root = WatcherTree(OcloudWatcher( + StxSaOcloudClient(), self.bus)) + root.addchild( + DmsWatcher(StxSaDmsClient(), self.bus)) + + child_respool = root.addchild( + ResourcePoolWatcher(StxSaResourcePoolClient(), + self.bus)) + child_pserver = child_respool.addchild( + PServerWatcher(StxPserverClient(), self.bus)) + child_pserver.addchild( + PServerCpuWatcher(StxCpuClient(), self.bus)) + + self.worker.add_watcher(root) + self.worker.start() except Exception as ex: logger.warning("WorkerService Exception:" + str(ex))