python - 如何防止哨兵捕获某些未捕获异常的事件并记录消息?
问题描述
正如 Sentry 的文档[1] [2]为其新的统一 python sdk ( sentry_sdk
) 推荐的那样,我已经使用我的 Django 应用程序对其进行了配置,以捕获所有异常或“错误”级别日志的事件:
import sentry_sdk
import logging
from sentry_sdk.integrations.django import DjangoIntegration
from sentry_sdk.integrations.logging import LoggingIntegration
sentry_logging = LoggingIntegration(
level=logging.DEBUG,
event_level=logging.ERROR
)
sentry_sdk.init(
dsn="{{sentry_dsn}}",
integrations=[DjangoIntegration(), sentry_logging]
)
然而,由于这直接挂钩到 python 的日志记录模块和内部异常处理,这意味着任何使用这个 Django 环境的东西都会将事件发送到哨兵。有些任务(例如交互式 manage.py 命令,或在 REPL 中工作)需要 Django 环境,但我不希望在 Sentry 中创建事件。
有没有办法向哨兵表明我不希望它从异常中捕获事件或logging
调用当前任务?或者在全局配置后暂时禁用它的方法?
解决方案
您可以sentry_sdk.init()
再次运行(尤其是没有 DSN)来禁用 SDK。
推荐阅读
- ios - ios Firebase 动态链接未打开已安装的应用程序
- sql - 两个请求之间保留内存的巨大差异
- html - Div 之间的奇怪边距
- wordpress - Varnish:如何将用户代理作为信息发送到 wordpress 以进行 404 监控
- python-3.x - 将文本文件转换为字典
- javascript - 我怎样才能使结果一致?SetInterval 无法正常工作
- python - 将函数应用于数据框列?
- c# - 无法向自定义控件添加内容
- unity3d - Unity 改变了我的图像资源。我该如何解决?
- php - Laravel 刀片在尝试允许 HTML 时向数据添加“`{}`”