summaryrefslogtreecommitdiff
path: root/raven/contrib
diff options
context:
space:
mode:
authorJim Fulton <jim@jimfulton.info>2017-06-12 13:45:02 -0400
committerJim Fulton <jim@jimfulton.info>2017-06-12 13:45:02 -0400
commit122fbe28015c495bf5c0656a70b6cb0147fe1245 (patch)
treea5ed7578024f21ed500108f3352da4e686491560 /raven/contrib
parentbdd4c882574c84df3d7d1a709db2abd4da5537ab (diff)
downloadraven-122fbe28015c495bf5c0656a70b6cb0147fe1245.tar.gz
Added tests and refactored.
The first stab at this was cribbed off the zope integration. This is now a bit cleaner.
Diffstat (limited to 'raven/contrib')
-rw-r--r--raven/contrib/zconfig/__init__.py25
-rw-r--r--raven/contrib/zconfig/component.xml19
2 files changed, 29 insertions, 15 deletions
diff --git a/raven/contrib/zconfig/__init__.py b/raven/contrib/zconfig/__init__.py
index 33db528..d5f555b 100644
--- a/raven/contrib/zconfig/__init__.py
+++ b/raven/contrib/zconfig/__init__.py
@@ -7,18 +7,33 @@ raven.contrib.zconfig
:copyright: (c) 2010-2013 by the Sentry Team, see AUTHORS for more details.
:license: BSD, see LICENSE for more details.
"""
+import logging
import ZConfig.components.logger.factory
import raven.handlers.logging
class Factory(ZConfig.components.logger.factory.Factory):
+ def __init__(self, section):
+ ZConfig.components.logger.factory.Factory.__init__(self)
+ self.section = section
+ self.section.level = self.section.level or logging.ERROR
+
def getLevel(self):
return self.section.level
def create(self):
- return raven.handlers.logging.SentryHandler(**self.section.__dict__)
-
- def __init__(self, section):
- ZConfig.components.logger.factory.Factory.__init__(self)
- self.section = section
+ return raven.handlers.logging.SentryHandler(
+ dsn=self.section.dsn,
+ site=self.section.site,
+ name=self.section.name,
+ release=self.section.release,
+ environment=self.section.environment,
+ exclude_paths=self.section.exclude_paths,
+ include_paths=self.section.include_paths,
+ sample_rate=self.section.sample_rate,
+ list_max_length=self.section.list_max_length,
+ string_max_length=self.section.string_max_length,
+ auto_log_stacks=self.section.auto_log_stacks,
+ processors=self.section.processors,
+ level=self.section.level)
diff --git a/raven/contrib/zconfig/component.xml b/raven/contrib/zconfig/component.xml
index 4353eb2..716d71d 100644
--- a/raven/contrib/zconfig/component.xml
+++ b/raven/contrib/zconfig/component.xml
@@ -8,18 +8,17 @@
datatype="raven.contrib.zconfig.Factory"
implements="ZConfig.logger.handler"
extends="ZConfig.logger.base-log-handler">
- <key name="include_paths" required="no" datatype="string-list"/>
- <key name="exclude_paths" required="no" datatype="string-list"/>
- <key name="timeout" required="no" datatype="integer"/>
- <key name="name" required="no"/>
- <key name="auto_log_stacks" required="no" datatype="boolean"/>
- <key name="string_max_length" required="no" datatype="integer"/>
- <key name="list_max_length" required="no" datatype="integer"/>
- <key name="site" required="no"/>
- <key name="processors" required="no" datatype="string-list"/>
- <key name="project" required="no"/>
<key name="dsn" required="no"/>
+ <key name="site" required="no"/>
+ <key name="name" required="no"/>
<key name="release" required="no"/>
<key name="environment" required="no"/>
+ <key name="exclude_paths" required="no" datatype="string-list"/>
+ <key name="include_paths" required="no" datatype="string-list"/>
+ <key name="sample_rate" required="no" datatype="float" default="1.0" />
+ <key name="list_max_length" required="no" datatype="integer"/>
+ <key name="string_max_length" required="no" datatype="integer"/>
+ <key name="auto_log_stacks" required="no" datatype="boolean"/>
+ <key name="processors" required="no" datatype="string-list"/>
</sectiontype>
</component>