django日志记录“没有处理程序可以找到记录器”
问题描述:
我搜查了所有类似的问题,没有任何帮助。 我创建了“通用”记录是这样的:django日志记录“没有处理程序可以找到记录器”
'': {
'handlers': ['logfile','console'],
'level': 'WARNING',
'propagate': True,
},
为了能够写出
import logging
log = logging.getLogger(__name__)
,并在我的Django的应用程序的任何文件得到记录器(看到这种做法的地方在SO),几天前它为我工作,但不是现在,我不明白为什么。
还有就是我的全部日志记录设置:
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,
},
}
}
答
我看到虽然只有标准被定义为既简单和标准的格式化引用。
当日志记录配置错误时,通常会显示此错误消息。你说过它早些时候工作,对吧?什么改变了?可能是导入实际的'settings.py'时出现问题 - 从django shell尝试登录smth。另外,你正在使用哪个django版本? – alecxe