Fix: defer cos-prometheus for bootstrap
If a COS prometheus changed event is processed but bootstrap hasn't completed yet, we need to retry the event at a later time. Closes-bug: #2042891 Change-Id: I3d274c09522f9d7ef56bc66f68d8488150c125d8
This commit is contained in:
parent
35f9af8c96
commit
762ad83c19
|
@ -61,15 +61,22 @@ class CephMetricsEndpointProvider(prometheus_scrape.MetricsEndpointProvider):
|
||||||
|
|
||||||
def _on_relation_changed(self, event):
|
def _on_relation_changed(self, event):
|
||||||
"""Enable prometheus on relation change"""
|
"""Enable prometheus on relation change"""
|
||||||
if self._charm.unit.is_leader() and ceph_utils.is_bootstrapped():
|
if not self._charm.unit.is_leader():
|
||||||
logger.debug(
|
return
|
||||||
"is_leader and is_bootstrapped, running rel changed: %s", event
|
|
||||||
)
|
if not ceph_utils.is_bootstrapped():
|
||||||
mgr_config_set_rbd_stats_pools()
|
logger.debug("not bootstrapped, defer rel changed: %s", event)
|
||||||
ceph_utils.mgr_enable_module("prometheus")
|
event.defer()
|
||||||
logger.debug("module_enabled")
|
return
|
||||||
self.update_alert_rules()
|
|
||||||
super()._on_relation_changed(event)
|
logger.debug(
|
||||||
|
"is_leader and is_bootstrapped, running rel changed: %s", event
|
||||||
|
)
|
||||||
|
mgr_config_set_rbd_stats_pools()
|
||||||
|
ceph_utils.mgr_enable_module("prometheus")
|
||||||
|
logger.debug("module_enabled")
|
||||||
|
self.update_alert_rules()
|
||||||
|
super()._on_relation_changed(event)
|
||||||
|
|
||||||
def _on_relation_departed(self, event):
|
def _on_relation_departed(self, event):
|
||||||
"""Disable prometheus on depart of relation"""
|
"""Disable prometheus on depart of relation"""
|
||||||
|
|
Loading…
Reference in New Issue