Django:为生产中的网站设置高效的日志记录系统 [英] Django: Setup an efficient logging system for a website in production
问题描述
好的,开发阶段已经结束,现在我的网站已投入使用.但是,我尚未设置日志记录.我的网站位于/var/www/html目录中.理想情况下,我想让Django登录/var/log/django,但这需要权限.
Alright so the development phase is over and now my website is live in prod. However, I have not set up the logging. My website is located in /var/www/html dir. Ideally I would like to have Django logging in /var/log/django but that would require permissions.
- 将Django日志保存在/var/log/中是标准做法吗?
- 将日志存储在/var/log中需要什么类型的权限.
- 我只想要最近两天的日志,而今天,如果可以的话,其余部分可以自动删除.
设置:RHEL7,Apache2.4,python3.5,Django 1.10,mod_wsgi,mySQL
Setup: RHEL7, Apache2.4, python3.5, Django 1.10, mod_wsgi, mySQL
推荐答案
-
没有它不是标准的. 将以下语句添加到settings.py,并根据需要修改日志文件路径:
No its not standard. Add the following statements to settings.py and modify the log file path to your needs:
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,
},
},
}
有关为日志文件设置适当权限的信息,请参见此内容:权限在以下情况下被拒绝写入日志文件
您将必须使用 logrotate ,否则请使用 kafka 服务器来维护日志.
You will have to use logrotate otherwise make use of kafka server to maintain logs.
这篇关于Django:为生产中的网站设置高效的日志记录系统的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!