django日志配置
django版本:1.9.5
在settings文件中加入如下配置:
LOGGING={
'version':1,
'disable_existing_loggers':True,
'formatters':{
'standard':{
'format':'%(asctime)s[%(threadName)s:%(thread)d][%(name)s:%(lineno)d][%(levelname)s]-%(message)s'
},
},
'filters':{
},
'handlers':{
'mail_admins':{
'level':'ERROR',
'class':'django.utils.log.AdminEmailHandler',
'include_html':True,
},
'default':{
'level':'DEBUG',
'class':'logging.handlers.RotatingFileHandler',
'filename':'E:\logs\magent.log',
'maxBytes':1024*1024*5,#5MB
'backupCount':5,
'formatter':'standard',
},
'console':{
'level':'DEBUG',
'class':'logging.StreamHandler',
'formatter':'standard'
},
'request_handler':{
'level':'DEBUG',
'class':'logging.handlers.RotatingFileHandler',
'filename':'E:\logs\magent.log',
'maxBytes':1024*1024*5,#5MB
'backupCount':5,
'formatter':'standard',
},
'scprits_handler':{
'level':'DEBUG',
'class':'logging.handlers.RotatingFileHandler',
'filename':'E:\logs\magent.log',
'maxBytes':1024*1024*5,
'backupCount':5,
'formatter':'standard',
},
},
'loggers':{
'django':{
'handlers':['default','console'],
'level':'DEBUG',
'propagate':False
},
'restservice.app':{
'handlers':['default','console'],
'level':'DEBUG',
'propagate':True
},
'django.request':{
'handlers':['request_handler'],
'level':'DEBUG',
'propagate':False
},
'scripts':{
'handlers':['scprits_handler'],
'level':'INFO',
'propagate':False
},
}
}
在views文件中加入如下配置:
importlogging
log=logging.getLogger('django')
注意,这里的日志名要跟上面配置的loggers中的名字一致,否则无法写日志。