diff options
author | David Cramer <dcramer@gmail.com> | 2015-07-15 22:51:00 -0700 |
---|---|---|
committer | David Cramer <dcramer@gmail.com> | 2015-07-15 22:51:00 -0700 |
commit | 058def47a40bd2ba92716f648942cd9a06111747 (patch) | |
tree | f09d45cc904a46f5f247cdd98afe47330098c46f | |
parent | 0ab984b8da5076712d6dce7cfe788b54b039cbf8 (diff) | |
download | raven-058def47a40bd2ba92716f648942cd9a06111747.tar.gz |
Support for custom exception hook fallbacks
-rw-r--r-- | raven/base.py | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/raven/base.py b/raven/base.py index 5d133d9..638e15c 100644 --- a/raven/base.py +++ b/raven/base.py @@ -35,6 +35,8 @@ from raven.transport.registry import TransportRegistry, default_transports __all__ = ('Client',) +__excepthook__ = None + PLATFORM_NAME = 'python' # singleton for the client @@ -201,8 +203,13 @@ class Client(object): self.logger.debug("Configuring Raven for host: {0}".format(self.remote)) def install_sys_hook(self): + global __excepthook__ + + if __excepthook__ is None: + __excepthook__ = sys.excepthook + def handle_exception(*exc_info): - sys.__excepthook__(*exc_info) + __excepthook__(*exc_info) self.captureException(exc_info=exc_info) sys.excepthook = handle_exception |