使用 djangos `manage.py shell` 时禁用 Sentry 报告

Dav*_*han 5 python django sentry

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

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

python manage.py shell

小智 5

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

要忽略所有异常,您可以传递['*']ignore_exceptions,但您只想在 django 进程已使用上述命令启动时执行此操作,这可以从sys.argv. 因此,可以通过在 djangosettings.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 [],
}
Run Code Online (Sandbox Code Playgroud)