Django logging“找不到记录器的处理程序”

2024-04-24 10:55:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我把所有类似的问题都找遍了,但没有任何帮助。 我创建了这样的“通用”记录器:

'': {
    'handlers': ['logfile','console'],
    'level': 'WARNING',
    'propagate': True,
},

为了能够写作

^{pr2}$

在我的django应用程序的任何文件中都可以找到logger(在某处见过这种方法),几天前它对我有用,但现在不行,我不明白为什么。在

有我的全部日志设置:

LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'formatters': {
        'standard': {
            'format' : "[%(asctime)s] %(levelname)s [%(name)s:%(lineno)s] %(message)s",
            'datefmt' : "%d/%b/%Y %H:%M:%S"
        },
    },
    'handlers': {
        'mail_admins': {
            'level': 'ERROR',
            'class': 'django.utils.log.AdminEmailHandler'
        },
       'logfile': {
            'level':'WARNING',
            'class':'logging.handlers.RotatingFileHandler',
            'filename': "/opt/telefacer_1/var/log/inapplog",
            'maxBytes': 50000,
            'backupCount': 2,
            'formatter': 'standard',
        },
        'console':{
            'level':'WARNING',
            'class':'logging.StreamHandler',
            'formatter': 'simple'
        },
    },
    'loggers': {
        'django.request': {
            'handlers': ['mail_admins'],
            'level': 'ERROR',
            'propagate': True,
        },
        '': {
            'handlers': ['logfile','console'],
            'level': 'WARNING',
            'propagate': True,
        },
    }
}

Tags: djangologtruehandlersmailerrorlevelloggers