diff options
author | Jenkins <jenkins@review.openstack.org> | 2015-06-10 17:11:50 +0000 |
---|---|---|
committer | Gerrit Code Review <review@openstack.org> | 2015-06-10 17:11:50 +0000 |
commit | 62e7280e0f8fb08b56f9eb7d706ae19cf0448b41 (patch) | |
tree | f6d52745db33e0df88f4ce8af91f207d771147fb | |
parent | 2e5ba4538edc08424bea12e0fc0bad54578d8b3e (diff) | |
parent | 1f8ccd3ac50aa941f042b02069b7185c3d5b5ae7 (diff) | |
download | oslo-messaging-62e7280e0f8fb08b56f9eb7d706ae19cf0448b41.tar.gz |
Merge "rabbit: Add logging on blocked connection"
-rw-r--r-- | oslo_messaging/_drivers/impl_rabbit.py | 17 | ||||
-rw-r--r-- | oslo_messaging/tests/drivers/test_impl_rabbit.py | 4 |
2 files changed, 18 insertions, 3 deletions
diff --git a/oslo_messaging/_drivers/impl_rabbit.py b/oslo_messaging/_drivers/impl_rabbit.py index 7bc7c43..d026779 100644 --- a/oslo_messaging/_drivers/impl_rabbit.py +++ b/oslo_messaging/_drivers/impl_rabbit.py @@ -477,7 +477,12 @@ class Connection(object): login_method=self.login_method, failover_strategy="shuffle", heartbeat=self.heartbeat_timeout_threshold, - transport_options={'confirm_publish': True}) + transport_options={ + 'confirm_publish': True, + 'on_blocked': self._on_connection_blocked, + 'on_unblocked': self._on_connection_unblocked, + }, + ) LOG.info(_LI('Connecting to AMQP server on %(hostname)s:%(port)s'), self.connection.info()) @@ -581,6 +586,14 @@ class Connection(object): return ssl_params or True return False + @staticmethod + def _on_connection_blocked(reason): + LOG.error(_LE("The broker has blocked the connection: %s"), reason) + + @staticmethod + def _on_connection_unblocked(): + LOG.info(_LI("The broker has unblocked the connection")) + def ensure_connection(self): self.ensure(method=lambda: True) @@ -829,7 +842,7 @@ class Connection(object): def _connect_error(exc): log_info = {'topic': consumer.routing_key, 'err_str': exc} LOG.error(_("Failed to declare consumer for topic '%(topic)s': " - "%(err_str)s"), log_info) + "%(err_str)s"), log_info) def _declare_consumer(): consumer.declare(self) diff --git a/oslo_messaging/tests/drivers/test_impl_rabbit.py b/oslo_messaging/tests/drivers/test_impl_rabbit.py index 660d861..9b22a1a 100644 --- a/oslo_messaging/tests/drivers/test_impl_rabbit.py +++ b/oslo_messaging/tests/drivers/test_impl_rabbit.py @@ -169,7 +169,9 @@ class TestRabbitDriverLoadSSL(test_utils.BaseTestCase): transport._driver._get_connection() connection_klass.assert_called_once_with( - 'memory:///', transport_options={'confirm_publish': True}, + 'memory:///', transport_options={'confirm_publish': True, + 'on_blocked': mock.ANY, + 'on_unblocked': mock.ANY}, ssl=self.expected, login_method='AMQPLAIN', heartbeat=0, failover_strategy="shuffle") |