【发布时间】:2015-04-02 22:37:37
【问题描述】:
我正在尝试在 settings.py 中配置我的日志记录配置,但选项太多,我无法复制内置的开发服务器日志(打印到控制台)。
我希望我的生产日志记录通常会在开发服务器日志中打印到控制台的相同信息(GET 请求、调试信息等)。我要么需要知道我需要在下面更改哪些设置,要么需要知道内置开发服务器日志的设置位置,以便我可以复制它。
LOGGING = {
'version': 1,
'formatters': {
'verbose': {
'format': '%(levelname)s %(asctime)s %(module)s %(process)d %(thread)d %(message)s'
},
'simple': {
'format': '%(levelname)s %(message)s'
},
},
'handlers': {
'console': {
'level': 'DEBUG',
'class': 'logging.StreamHandler',
'formatter': 'simple'
},
'file': {
'level': 'DEBUG',
'class': 'logging.FileHandler',
'filename': '/home/django/django_log.log',
'formatter': 'simple'
},
},
'loggers': {
'django': {
'handlers': ['file'],
'level': 'DEBUG',
'propagate': True,
},
}
}
if DEBUG:
# make all loggers use the console.
for logger in LOGGING['loggers']:
LOGGING['loggers'][logger]['handlers'] = ['console']
如果可能的话,除了我的 settings.py 之外,我也不想在其他任何地方添加任何代码。我不想进入我的views.py并指定要打印或记录哪些错误,我从来不需要在开发服务器上这样做,所以我希望我能解决这个问题。
【问题讨论】:
-
我正在使用 uWSGI 进行生产,它将所有日志(从控制台)重定向到文件。 docs.djangoproject.com/en/1.8/howto/deployment/wsgi/uwsgi