From: Boris Ranto Date: Wed, 25 Nov 2020 09:27:25 +0000 (+0100) Subject: mgr/prometheus: Use mgr.release_name for always on modules X-Git-Tag: v15.2.9~40^2~3 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=5f752eb0ad016ec809eaecbb1790e10aced13ed3;p=ceph.git mgr/prometheus: Use mgr.release_name for always on modules The host_version is not populated properly in the early stages of ceph mgr start up process. We can use mgr.release_name instead. It is more stable and it provides the data even if mgr_map does not contain the versions, yet. Signed-off-by: Boris Ranto (cherry picked from commit aa0650092da3cbf1a73151999874001352cfb9ef) --- diff --git a/src/pybind/mgr/prometheus/module.py b/src/pybind/mgr/prometheus/module.py index 2ae60cd82047..c420bd763f99 100644 --- a/src/pybind/mgr/prometheus/module.py +++ b/src/pybind/mgr/prometheus/module.py @@ -588,12 +588,10 @@ class Module(MgrModule): all_modules = {module.get('name'):module.get('can_run') for module in mgr_map['available_modules']} - ceph_release = None for mgr in all_mgrs: host_version = servers.get((mgr, 'mgr'), ('', '')) if mgr == active: _state = 1 - ceph_release = host_version[1].split()[-2] # e.g. nautilus else: _state = 0 @@ -604,7 +602,7 @@ class Module(MgrModule): self.metrics['mgr_status'].set(_state, ( 'mgr.{}'.format(mgr), )) - always_on_modules = mgr_map['always_on_modules'].get(ceph_release, []) + always_on_modules = mgr_map['always_on_modules'].get(self.release_name, []) active_modules = list(always_on_modules) active_modules.extend(mgr_map['modules'])