Django:为生产中的网站设置高效的日志系统
Django: Setup an efficient logging system for a website in production
好的,开发阶段已经结束,现在我的网站已经上线了。但是,我还没有设置日志记录。我的网站位于 /var/www/html 目录。理想情况下,我想让 Django 登录 /var/log/django,但这需要权限。
- 将 Django 日志保存在 /var/log/ 中是标准做法吗?
- 我需要什么类型的权限才能将日志存储在 /var/log。
- 我只想要最近 2 天和今天的日志,其余的可以自动删除。
设置:RHEL7、Apache2.4、python3.5、Django 1.10、mod_wsgi、mySQL
不,这不标准。
将以下语句添加到 settings.py 并根据需要修改日志文件路径:
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'handlers': {
'file': {
'level': 'DEBUG',
'class': 'logging.FileHandler',
'filename': '/path/to/django/debug.log',
},
},
'loggers': {
'django': {
'handlers': ['file'],
'level': 'DEBUG',
'propagate': True,
},
},
}
参考这个为日志文件设置合适的权限:Permission Denied when writing log file
-
好的,开发阶段已经结束,现在我的网站已经上线了。但是,我还没有设置日志记录。我的网站位于 /var/www/html 目录。理想情况下,我想让 Django 登录 /var/log/django,但这需要权限。
- 将 Django 日志保存在 /var/log/ 中是标准做法吗?
- 我需要什么类型的权限才能将日志存储在 /var/log。
- 我只想要最近 2 天和今天的日志,其余的可以自动删除。
设置:RHEL7、Apache2.4、python3.5、Django 1.10、mod_wsgi、mySQL
不,这不标准。 将以下语句添加到 settings.py 并根据需要修改日志文件路径:
LOGGING = { 'version': 1, 'disable_existing_loggers': False, 'handlers': { 'file': { 'level': 'DEBUG', 'class': 'logging.FileHandler', 'filename': '/path/to/django/debug.log', }, }, 'loggers': { 'django': { 'handlers': ['file'], 'level': 'DEBUG', 'propagate': True, }, }, }
参考这个为日志文件设置合适的权限:Permission Denied when writing log file