我在自定义django-admin命令中有这一行:
logger.info("%d records updated", records_updated)
当我运行该命令时,日志文件和控制台输出显示了我的期望:
[2011-09-02 03:49:31,405] INFO::(27041 140698227433576)::update_records - 5 records updated
但是,向管理员发送的电子邮件显示
INFO: %d records updated #This is the subject and body of the email the admin receives
这是我在settings.py文件中的日志信息:
LOGGING = {
'version': 1,
'disable_existing_loggers': True,
'formatters': {
'default': {
'format': '[%(asctime)s] %(levelname)s::(%(process)d %(thread)d)::%(module)s - %(message)s'
},
},
'handlers': {
'email_admins': {
'level': 'INFO',
'class': 'django.utils.log.AdminEmailHandler',
'include_html': True,
'formatter': 'default',
},
'admin_console': {
'level':'INFO',
'class':'logging.StreamHandler',
'formatter': 'default'
},
'null': {
'level':'DEBUG',
'class':'django.utils.log.NullHandler',
'formatter': 'default',
},
'file_handler': {
'level': 'DEBUG',
'formatter':'default',
'class': 'logging.handlers.TimedRotatingFileHandler',
'filename':'logs/Project_log',
'when':'midnight',
'interval':1,
},
'request_handler': {
'level':'DEBUG',
'class':'logging.handlers.RotatingFileHandler',
'filename': 'logs/django_request.log',
'maxBytes': 1024*1024*5, # 5 MB
'backupCount': 5,
'formatter':'default',
},
},
'loggers': {
'': {
'handlers': ['email_admins', 'file_handler', 'admin_console'],
'level': 'DEBUG',
'propagate': True,
},
'django': {
'handlers':['null'],
'propagate': True,
'level':'INFO',
},
'django.request': {
'handlers': ['email_admins', 'request_handler'],
'level': 'ERROR',
'propagate': False,
},
}
}
任何反馈意见。
答案 0 :(得分:0)
logger.info("%d records updated" % records_updated)
也许你应该这样写?