diff --git a/monasca_persister/repositories/persister.py b/monasca_persister/repositories/persister.py index 0be7fff0..ca996317 100644 --- a/monasca_persister/repositories/persister.py +++ b/monasca_persister/repositories/persister.py @@ -47,13 +47,13 @@ class Persister(six.with_metaclass(ABCMeta, object)): self._data_points = [] self._consumer.commit() except Exception as ex: - if "partial write: points beyond retention policy dropped" in ex.message: + if "partial write: points beyond retention policy dropped" in str(ex): LOG.warning("Some points older than retention policy were dropped") self._data_points = [] self._consumer.commit() elif cfg.CONF.repositories.ignore_parse_point_error \ - and "unable to parse" in ex.message: + and "unable to parse" in str(ex): LOG.warning("Some points were unable to be parsed and were dropped") self._data_points = [] self._consumer.commit() diff --git a/monasca_persister/tests/test_persister_repo.py b/monasca_persister/tests/test_persister_repo.py index 0bb94b4f..a3b77baa 100644 --- a/monasca_persister/tests/test_persister_repo.py +++ b/monasca_persister/tests/test_persister_repo.py @@ -108,17 +108,16 @@ class TestPersisterRepo(base.BaseTestCase): mock_consumer.commit.assert_called() self.assertEqual([], self.persister._data_points) - @patch.object(LOG, 'info', side_effect=FakeException()) - def test_flush_logs_warning_and_exception(self, mock_log_info): + def test_flush_logs_warning_and_exception(self): exception_msgs = ['partial write: points beyond retention policy dropped', - 'unable to parse points'] + 'unable to parse'] with(patch.object(cfg.CONF.repositories, 'ignore_parse_point_error', return_value=True)): for elem in exception_msgs: - mock_log_info.side_effect.message = elem - self.persister._data_points = ['some'] - self.persister._flush() - self.mock_log_warning.assert_called() + with patch.object(LOG, 'info', side_effect=FakeException(elem)): + self.persister._data_points = ['some'] + self.persister._flush() + self.mock_log_warning.assert_called() @patch.object(LOG, 'info', side_effect=FakeException()) def test_flush_logs_exception(self, mock_log_info):