Plone集成raven / sentry。
项目描述
目的
此包扩展了 raven,它是Plone集成Sentry的一种方法,不是基于记录器的,而是挂钩到Zope异常处理。
请注意,已经存在一个标准的基于记录器的 Zope / Plone集成raven。除非您想要基于异常挂钩的集成,否则您应该使用标准实现。
安装和配置
将 ftw.raven 包添加到您的依赖项中。
在buildout中使用环境变量配置raven客户端
buildout的示例配置
[instance]
eggs +=
ftw.raven
environment-vars +=
RAVEN_DSN https://123:456@sentry.local/2
配置-测试
您可以通过访问任何上下文上的 raven-test 视图作为 Manager-用户来测试您的配置。这将触发一个异常,该异常应出现在您的sentry项目中。
请注意,在某些情况下,触发器可能无法在本地测试系统中正常工作。
在JavaScript中,您可以在JavaScript控制台中调用 raven_test() 函数,这将也会触发一个异常。
版本跟踪
当报告异常时,可以发送版本。版本可以是发布分发的版本号(例如在pypi上发布)或应用程序未在pypi上发布时项目检出的HEAD SHA。
发布分发的版本
使用发行版作为发布时,环境变量RAVEN_PROJECT_DIST必须包含发行版的名称,例如:
[instance]
environment-vars +=
RAVEN_PROJECT_DIST my.project
检出Git SHA
通常,buildout根目录是项目的检出,因此我们需要配置RAVEN_BUILDOUT_ROOT以便找到git仓库
[instance]
environment-vars +=
RAVEN_BUILDOUT_ROOT ${buildout:directory}
忽略异常
默认情况下,不会报告所有异常,因为一些异常,如重定向或404,不是错误,而是作为异常实现。如果没有配置,将不会报告异常NotFound、Unauthorized、Redirect和Intercepted。
可以通过环境变量RAVEN_ENABLE_EXCEPTIONS启用这些异常的报告
[instance]
environment-vars +=
RAVEN_ENABLE_EXCEPTIONS NotFound, Redirect
如果您需要禁用自定义异常,可以使用环境变量RAVEN_DISABLE_EXCEPTIONS来做到这一点
[instance]
environment-vars +=
RAVEN_DISABLE_EXCEPTIONS UnimportantError
报告JavaScript错误
为了能够报告JavaScript错误,必须安装ftw.raven:default通用设置配置文件,该配置文件注册了一个包含raven库和配置的JavaScript。
链接
版权
本软件包版权所有4teamwork。
ftw.raven受GNU通用公共许可证,版本2的许可。
变更日志
1.3.1 (2020-10-26)
在JS中支持threaded+requests+https dsn方案。[Nachtalb]
1.3.0 (2019-03-08)
增加对Plone 5的支持。[mbaechtold, jone]
将raven资源移动到plone包中。[mathias.leimgruber]
1.2.0 (2017-03-15)
添加环境变量RAVEN_DISABLE_EXCEPTIONS,允许禁用自定义异常的报告。[jone]
1.1.3 (2016-04-29)
默认情况下,也忽略来自plone.caching的Intercepted异常。[lgraf]
1.1.2 (2016-03-15)
测试raven配置是否可在javascript集成中访问。[Kevin Bieri]
1.1.1 (2016-01-20)
修复错误日志中忽略的错误(如NotFound)的bug。[jone]
1.1.0 (2016-01-20)
重构JavaScript集成,使其可缓存。[jone]
将错误日志编号作为标签报告。[jone]
添加一个视图raven-test和一个JavaScript函数raven_test(),用于测试raven配置和连接。这两个都会抛出一个异常,该异常将被报告给sentry。[jone]
添加新的环境变量RAVEN_TAGS和RAVEN_TAGS_FILE,以便能够附加额外的静态标签。[jone]
1.0.2 (2016-01-15)
修复IP报告问题:优先考虑X-Forwarded-For。[jone]
1.0.1 (2016-01-15)
报告客户端IP而不是代理IP。[jone]
不要报告由重试处理的重试冲突错误,但要报告重试3次后失败的错误。[jone]
1.0.0 (2016-01-15)
初始实现[jone]