def test_can_forward_exception_info(self): exc_msg = 'something went wrong' with LogCapture() as l_: log = get_logger('bar') wrapped_log = ForwardingLogger(forward_to=log, forward_prefix='[FOO] ') try: raise ValueError(exc_msg) except ValueError: wrapped_log.exception('caught error') l_.check(('bar', 'ERROR', '[FOO] caught error'),) lr, = l_.records logged_text = LogFormatter('%(message)s').format(lr) assert_true(logged_text.startswith('[FOO] caught error')) assert_contains('Traceback (most recent call last)', logged_text) assert_contains('ValueError: ' + exc_msg, logged_text)