跳转到主要内容

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,不是错误,而是作为异常实现。如果没有配置,将不会报告异常NotFoundUnauthorizedRedirectIntercepted

可以通过环境变量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。

附加标签

可以为部署报告附加额外的预定义标签。这些标签可以直接在环境变量RAVEN_TAGS中以JSON形式声明,或者变量RAVEN_TAGS_FILE可以包含指向json文件的路径。这两种方法可以结合使用,相应的字典将合并(RAVEN_TAGS变量的标签优先)。

JSON必须是一个包含字符串作为键和值的单级散列。

示例

[instance]
environment-vars +=
    RAVEN_TAGS {"deployment": "production"}
[instance]
environment-vars +=
    RAVEN_TAGS_FILE ${buildout:directory}/conf/raven_tags.json

变更日志

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_TAGSRAVEN_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]

项目详细信息


下载文件

下载适用于您的平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分布

ftw.raven-1.3.1.tar.gz (33.9 kB 查看散列值)

上传时间