Django部署到线上之后,出现一些奇怪的500错误。但是关了DEBUG,uwsgi里没得详细日志可以看。于是谷歌了一番,发现有这个疑惑的不止我一个。
在stackoverflow.com关于此的问答中可以看到,配置很简单。在settings
里配置
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'formatters': {
'normal': {
'format': '[%(asctime)s][%(levelname)s] %(message)s'
}
},
'handlers': {
'console': {
'level': 'DEBUG',
'filters': None,
'class': 'logging.StreamHandler',
'formatter': 'normal',
},
},
'loggers': {
'django': {
'handlers': ['console'],
'level': os.environ.get("DJANGO_LOG_LEVEL", "INFO"),
},
},
}
它申明django这个日志对象输出到console,而console的配置是StreamHandler。从而使Django的日志可以被输出到uwsgi的日志中。
在官方文档中有更多详细配置,用以更详细的日志展示。在此不赘述