【问题标题】:Disable Sentry reporting when using djangos `manage.py shell`使用 djangos `manage.py shell` 时禁用哨兵报告
【发布时间】:2018-09-04 15:56:33
【问题描述】:

我正在使用 sentry 报告我的 django 应用程序中发生的错误。

有没有办法在使用类似命令时禁用哨兵错误报告

python manage.py shell

【问题讨论】:

    标签: python django sentry


    【解决方案1】:

    要忽略 Sentry 中的某些或所有类型的异常,您可以使用 ignore_exceptions RAVEN_CONFIG 选项在您的 settings.py 文件中。 ignore_exceptions 接受异常类或字符串路径列表。 您可以在此处阅读有关忽略 Sentry 文档中的异常的更多信息:https://docs.sentry.io/clients/python/advanced/

    要忽略所有异常,您可以将['*'] 传递给ignore_exceptions,但您只想在使用上述命令启动django 进程时执行此操作,可以从sys.argv 获知。因此,您可以通过将以下代码添加到您的 django settings.py 文件中来实现您想要的结果:

    import sys
    SHOULD_IGNORE_EXCEPTIONS = " ".join(sys.argv).endswith("run python manage.py shell")
    
    RAVEN_CONFIG = {
        'dsn': '...',
        'ignore_exceptions': ['*'] if SHOULD_IGNORE_EXCEPTIONS else [],
    }
    

    【讨论】:

      【解决方案2】:

      有一个未记录但绝对稳定的设置:

      RAVEN_CONFIG = {
          'install_sys_hook': False
      }
      

      【讨论】:

        猜你喜欢
        • 2021-06-27
        • 1970-01-01
        • 1970-01-01
        • 2014-10-11
        • 1970-01-01
        • 2021-12-05
        • 2022-01-04
        • 2018-09-05
        • 1970-01-01
        相关资源
        最近更新 更多