python - 如何忽略 Sentry 捕获中的某些 Python 错误

标签 python django celery sentry

我已将 Sentry 配置为捕获 Django+Celery 应用程序中的所有错误。它工作正常,但我发现一个令人讨厌的用例是当我必须重新启动我的 Celery worker、PostgreSQL 数据库或消息服务器时,这会导致数以千计的各种“无法访问数据库/消息服务器”错误。这会污染 Sentry 报告,有时甚至会超出我的事件配额。

Their docs提到一个“ignore_exceptions”参数,但它在我不使用的旧客户端中,也不建议用于新项目。您将如何在新 API 中执行此操作?

最佳答案

我花了一些资源潜水才真正找到它,但新 SDK 中的选项是“ignore_errors”。它需要一个可迭代对象,其中每个元素可以是字符串或类型(如旧接口(interface))。

我犹豫是否要链接到它,因为它是一种随时可能更改的内部方法,但是 here 是我写这篇文章时的快照。

举个例子(重新实现 Markus 的回答):

import sentry_sdk

sentry_sdk.init(ignore_errors=[IgnoredErrorFoo, IgnoredErrorBar])

关于python - 如何忽略 Sentry 捕获中的某些 Python 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57828717/

相关文章:

python - 在服务器中更改 Django 的数据库结构

python - forms.py 文件应位于何处?

python - 如何将 celery 应用程序与 Task 类绑定(bind)?

python - celery : launch chord callback after its associated body

python - OAuthException : Invalid response from google

python 正则表达式 : capturing group within OR

javascript - Angular 2 前端 django 2 REST 框架后端用户身份验证

python - 使用 gevent 时工作进程数的 Celery 命令行参数

python - 如何在 zmq 的推/拉模式中设置 hwm?

python - 对几个特定频率取 fft 和 ifft