diff --git a/ceilometermiddleware/swift.py b/ceilometermiddleware/swift.py index 04c09f4..d3f8401 100644 --- a/ceilometermiddleware/swift.py +++ b/ceilometermiddleware/swift.py @@ -77,6 +77,7 @@ import queue import threading import urllib.parse as urlparse +CONF = cfg.CONF LOG = logging.getLogger(__name__) @@ -160,10 +161,21 @@ class Swift(object): self.ignore_projects = self._get_ignore_projects(conf) + extra_config_files = conf.get('extra_config_files') + if extra_config_files is not None: + extra_config_files = list_from_csv(extra_config_files) + + extra_config_dirs = conf.get('extra_config_dirs') + if extra_config_dirs is not None: + extra_config_dirs = list_from_csv(extra_config_dirs) + + CONF(args=[], default_config_files=extra_config_files, + default_config_dirs=extra_config_dirs) + oslo_messaging.set_transport_defaults(conf.get('control_exchange', 'swift')) self._notifier = oslo_messaging.Notifier( - oslo_messaging.get_notification_transport(cfg.CONF, + oslo_messaging.get_notification_transport(CONF, url=conf.get('url')), publisher_id='ceilometermiddleware', driver=conf.get('driver', 'messagingv2'), diff --git a/releasenotes/notes/bug-1673738-ec8f7dd8ac43ad54.yaml b/releasenotes/notes/bug-1673738-ec8f7dd8ac43ad54.yaml new file mode 100644 index 0000000..9c1847c --- /dev/null +++ b/releasenotes/notes/bug-1673738-ec8f7dd8ac43ad54.yaml @@ -0,0 +1,7 @@ +--- +fixes: + - | + The ceilometer middleware now supports loading additional config files to + look up oslo.messaging lbirary options. Set the ``extra_config_files`` + parameter or the ``extra_config_dirs`` parameter in the ceilometer + middleware section in the swift proxy server config file.