gpt4 book ai didi

django - 如何通过多个 raven 配置使用 Sentry 日志记录

转载 作者:行者123 更新时间:2023-12-02 06:41:30 24 4
gpt4 key购买 nike

我可以在 Django 设置中使用不同的 dsn 值定义多个 RAVEN_CONFIG ,然后以某种方式进行配置,以便当我从一个 Django 应用程序中的文件中收到错误时,他们登录到一个 Sentry 商店,而其他 Django 应用程序登录到另一个 Sentry 商店?

最佳答案

试试这个方法,效果不错

1) 制作SentryHandler的自定义处理程序

from __future__ import absolute_import

import logging

from raven.handlers.logging import SentryHandler


class CustomSentryHandler(SentryHandler):
def __init__(self, *args, **kwargs):
dsn = kwargs.pop('dsn', None)

self.tags = kwargs.pop('tags', None)

logging.Handler.__init__(self, level=kwargs.get('level', logging.NOTSET))

super(CustomSentryHandler, self).__init__(dsn, **kwargs)

2) 更改您的登录设置

LOGGING = {
'version': 1,
'disable_existing_loggers': True,
'formatters': {
'verbose': {
'format': '%(levelname)s %(asctime)s %(module)s '
'%(process)d %(thread)d %(message)s'
},
},
'handlers': {
'sentry1': {
'level': 'ERROR',
'class': 'project.sentry.CustomHandler',
'dsn': '<DSN1>',
},
},
'loggers': {
'sentry1': {
'handlers': ['sentry1'],
'level': 'ERROR',
'propagate': False,
}
}

}

3)记录您的错误

import logging
logger = logging.getLogger('sentry2')
logger.error('yeey!')

关于django - 如何通过多个 raven 配置使用 Sentry 日志记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40278849/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com