我有一个通过WSGI运行的python 3烧瓶服务器。我有一个配置文件,它是由处理环境变量的api代码导入的,我在这个文件中设置了哨兵。这是我的代码,它的设置与哨兵文档中的描述完全相同https://docs.sentry.io/platforms/python/logging/
if sentry_dsn is not None:
sentry_logging = LoggingIntegration(
level=logging.INFO,
event_level=logging.CRITICAL,
)
LOG.debug(f"Initialising sentry for environment {sentry_environment}")
sentry_sdk.init(
sentry_dsn,
environment=sentry_environment,
integrations=[sentry_logging],
)
else:
LOG.warn("Sentry key not set up")
问题是,这不会在异常日志甚至未捕获的异常中向sentint发送任何事件。我知道DSN是正确的,因为如果我像这样设置哨兵,所有未捕获的异常以及错误和异常日志都会发送到我的哨兵项目:
if sentry_dsn is not None:
LOG.debug("Initialising sentry")
sentry_sdk.init(sentry_dsn, environment=sentry_environment)
else:
LOG.warn("Sentry key not set up")
我已经尝试过在sentinet init中使用debug=True
设置进行设置,日志确认sentinet初始化并设置了集成。但当发生了应该报告的事件时,哨兵并没有记录日志或任何内容。
如有任何帮助,将不胜感激
原来flask正在拦截异常,因为默认的哨兵集成不包括flask。这意味着哨兵没有收到任何东西。我根据哨兵文件添加了烧瓶集成(https://docs.sentry.io/platforms/python/flask/)哨兵的信息如我所料地发送了。