哨兵 Django 集成 event_level
Sentry DjangoIntegration event_level
我像这样将 Sentry 与 Django 一起使用:
sentry_integration = DjangoIntegration()
sentry_sdk.init(
dsn="https://xxx@sentry.io/xxx",
integrations=[sentry_integration]
)
并使用这些日志记录设置:
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'handlers': {
'console': {
'class': 'logging.StreamHandler',
},
'file': {
'class': 'logging.FileHandler',
'filename': os.path.join(BASE_DIR, 'logs', 'django.log'),
},
},
'loggers': {
'django': {
'handlers': ['file', 'console'],
'level': 'DEBUG',
},
'django.template': {
'handlers': ['file', 'console'],
'level': 'INFO',
},
'app': {
'handlers': ['file', 'console'],
'level': 'DEBUG',
}
},
}
如果我在我的代码中实例化并调用记录器,它会发送到 Sentry。
import logging
logger = logging.getLogger(__name__)
logger.error("error!")
但是,现在我还想记录 .warning
通话。 documentation 说要这样做:
sentry_logging = LoggingIntegration(event_level=logging.WARNING)
sentry_sdk.init(
dsn="https://xxx@sentry.io/xxx",
integrations=[sentry_logging]
)
但使用的是 LoggingIntegration
而不是 DjangoIntegration。我尝试在上面的代码中使用 DjangoIntegration
但出现此错误:
TypeError: init() got an unexpected keyword argument 'event_level'
这可能吗?
集成参数是一个列表。您可以传入两个集成:
init(
integrations=[LoggingIntegration(...), DjangoIntegration(...)]
)
我像这样将 Sentry 与 Django 一起使用:
sentry_integration = DjangoIntegration()
sentry_sdk.init(
dsn="https://xxx@sentry.io/xxx",
integrations=[sentry_integration]
)
并使用这些日志记录设置:
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'handlers': {
'console': {
'class': 'logging.StreamHandler',
},
'file': {
'class': 'logging.FileHandler',
'filename': os.path.join(BASE_DIR, 'logs', 'django.log'),
},
},
'loggers': {
'django': {
'handlers': ['file', 'console'],
'level': 'DEBUG',
},
'django.template': {
'handlers': ['file', 'console'],
'level': 'INFO',
},
'app': {
'handlers': ['file', 'console'],
'level': 'DEBUG',
}
},
}
如果我在我的代码中实例化并调用记录器,它会发送到 Sentry。
import logging
logger = logging.getLogger(__name__)
logger.error("error!")
但是,现在我还想记录 .warning
通话。 documentation 说要这样做:
sentry_logging = LoggingIntegration(event_level=logging.WARNING)
sentry_sdk.init(
dsn="https://xxx@sentry.io/xxx",
integrations=[sentry_logging]
)
但使用的是 LoggingIntegration
而不是 DjangoIntegration。我尝试在上面的代码中使用 DjangoIntegration
但出现此错误:
TypeError: init() got an unexpected keyword argument 'event_level'
这可能吗?
集成参数是一个列表。您可以传入两个集成:
init(
integrations=[LoggingIntegration(...), DjangoIntegration(...)]
)