summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArmin Ronacher <armin.ronacher@active-4.com>2015-11-17 20:16:44 +0100
committerArmin Ronacher <armin.ronacher@active-4.com>2015-11-17 20:16:44 +0100
commitbebbb36c2fba928e1855e30d6dfbd6968bd6db56 (patch)
tree89a5195c85b535e2c02c9ffb82c671d57db64ce0
parentbbc7e1523c3723c5fe479494e03abb0e0400ecf1 (diff)
downloadraven-feature/disable-dsn-explicit.tar.gz
Allow explicit disabling of clients by setting DSN to None.feature/disable-dsn-explicit
-rw-r--r--raven/base.py20
1 files changed, 13 insertions, 7 deletions
diff --git a/raven/base.py b/raven/base.py
index f258aa2..5bdc899 100644
--- a/raven/base.py
+++ b/raven/base.py
@@ -118,7 +118,7 @@ class Client(object):
_registry = TransportRegistry(transports=default_transports)
- def __init__(self, dsn=None, raise_send_errors=False, transport=None,
+ def __init__(self, dsn=Ellipsis, raise_send_errors=False, transport=None,
install_sys_hook=True, **options):
global Raven
@@ -178,11 +178,14 @@ class Client(object):
if install_sys_hook:
self.install_sys_hook()
- def set_dsn(self, dsn=None, transport=None):
- if dsn is None and os.environ.get('SENTRY_DSN'):
- msg = "Configuring Raven from environment variable 'SENTRY_DSN'"
- self.logger.debug(msg)
- dsn = os.environ['SENTRY_DSN']
+ def set_dsn(self, dsn=Ellipsis, transport=None):
+ if dsn is Ellipsis:
+ if os.environ.get('SENTRY_DSN'):
+ msg = "Configuring Raven from environment variable 'SENTRY_DSN'"
+ self.logger.debug(msg)
+ dsn = os.environ['SENTRY_DSN']
+ else:
+ dsn = None
if dsn not in self._transport_cache:
if dsn is None:
@@ -198,7 +201,10 @@ class Client(object):
else:
self.remote = self._transport_cache[dsn]
- self.logger.debug("Configuring Raven for host: {0}".format(self.remote))
+ if dsn is not None:
+ self.logger.debug("Configuring Raven for host: {0}".format(self.remote))
+ else:
+ self.logger.debug('Disabling raven because DSN set to None')
def install_sys_hook(self):
global __excepthook__