Update exception.wrap_exception so that all exceptions (not just Error
and NovaException types) get logged correctly.
This commit is contained in:
parent
23fefd1772
commit
19b3b7a0c5
|
@ -121,13 +121,6 @@ def wrap_exception(notifier=None, publisher_id=None, event_type=None,
|
|||
notifier.notify(publisher_id, temp_type, temp_level,
|
||||
payload)
|
||||
|
||||
if (not isinstance(e, Error) and
|
||||
not isinstance(e, NovaException)):
|
||||
#exc_type, exc_value, exc_traceback = sys.exc_info()
|
||||
LOG.exception(_('Uncaught exception'))
|
||||
#logging.error(traceback.extract_stack(exc_traceback))
|
||||
raise Error(str(e))
|
||||
|
||||
# re-raise original exception since it may have been clobbered
|
||||
raise exc_info[0], exc_info[1], exc_info[2]
|
||||
|
||||
|
|
|
@ -74,14 +74,13 @@ class WrapExceptionTestCase(test.TestCase):
|
|||
|
||||
def test_wrap_exception_throws_exception(self):
|
||||
wrapped = exception.wrap_exception()
|
||||
# Note that Exception is converted to Error ...
|
||||
self.assertRaises(exception.Error, wrapped(bad_function_exception))
|
||||
self.assertRaises(Exception, wrapped(bad_function_exception))
|
||||
|
||||
def test_wrap_exception_with_notifier(self):
|
||||
notifier = FakeNotifier()
|
||||
wrapped = exception.wrap_exception(notifier, "publisher", "event",
|
||||
"level")
|
||||
self.assertRaises(exception.Error, wrapped(bad_function_exception))
|
||||
self.assertRaises(Exception, wrapped(bad_function_exception))
|
||||
self.assertEquals(notifier.provided_publisher, "publisher")
|
||||
self.assertEquals(notifier.provided_event, "event")
|
||||
self.assertEquals(notifier.provided_priority, "level")
|
||||
|
@ -91,7 +90,7 @@ class WrapExceptionTestCase(test.TestCase):
|
|||
def test_wrap_exception_with_notifier_defaults(self):
|
||||
notifier = FakeNotifier()
|
||||
wrapped = exception.wrap_exception(notifier)
|
||||
self.assertRaises(exception.Error, wrapped(bad_function_exception))
|
||||
self.assertRaises(Exception, wrapped(bad_function_exception))
|
||||
self.assertEquals(notifier.provided_publisher, None)
|
||||
self.assertEquals(notifier.provided_event, "bad_function_exception")
|
||||
self.assertEquals(notifier.provided_priority, notifier.ERROR)
|
||||
|
|
Loading…
Reference in New Issue