我对 django 如何处理日志感到有些困惑。我的设置中有记录器的此设置:
记录设置
LOGGING = {
...
'handlers': {
'console': {
'class': 'logging.StreamHandler',
'formatter': 'verbose',
},
'file': {
'level': 'DEBUG',
'class': 'logging.handlers.RotatingFileHandler',
'filename': LOG_BASE_DIRECTORY + '/django.log',
'maxBytes': LOGFILE_SIZE,
'backupCount': LOGFILE_COUNT,
'formatter': 'verbose'
},
'mail_admins': {
'level': 'ERROR',
#'filters': ['require_debug_false'],
'class': 'django.utils.log.AdminEmailHandler'
}
},
'loggers': {
'django': {
'handlers': ['file','mail_admins'],
'level': 'INFO',
'propagate': True,
},
'app1': {
'handlers': ['file','mail_admins'],
'level': 'DEBUG',
'propagate': True,
},
...
},
}
可以看到,我为 django 和应用程序日志、文件和 mail_admins 定义了 2 个处理程序。文件的日志级别是调试。因此,我假设所有调试及以上的日志都应使用此处理程序。mail_admins 的级别为错误。我看到的问题是,如果在电子邮件处理程序运行并发送邮件时出现 500 个错误,则文件上没有日志记录。