如何在 Sentry Python SDK 中定义日志级别

How to define logging level in Sentry Python SDK

python 3.5
sentry-sdk 0.8.0

您好,

我正在尝试从 Django 的视图中获取 Sentry.io 一些信息(INFO 级别),但我不确定如何制作它。这是我试过的:

在settings.py

sentry_logging = LoggingIntegration(
    level=logging.INFO,        
    event_level=logging.INFO
)
sentry_sdk.init(
    dsn="https://###",
    integrations=[DjangoIntegration(), sentry_logging],
    server_name="MyServerName",
)

在views.py

def myview(request, something):
    # Here I do something

    # Log some data
    logger.info('Interesting info !', extra={
         'something_modified': something_modified,
    })

使用此代码,我在 Sentry 中看不到我的事件信息。如果我调用 logger.error(###) 它会显示此事件并且我有红色 "error" 标志,如预期的错误级别。

所以我尝试了:

def myview(request, something):
    # Here I do something

    # Log some data
    with configure_scope() as scope:
        scope.level = 'info'
        logger.info('Interesting info !', extra={
            'something_modified': something_modified,
        })

文档中的一些概念对我来说仍然不清楚,我可能把 "context / scope / levels" 混在一起了。

感谢您的帮助。

您应该将记录器的级别设置为信息:

logger.setLevel(logging.INFO)