Django:如何使日志记录正常工作?
我在我的settings.py文件中添加了以下内容:
import logging
...
logging.basicConfig(level=logging.DEBUG,
format='%(asctime)s %(levelname)s %(message)s',
filename=os.path.join(rootdir, 'django.log'),
filemode='a+')
然后在views.py中,我添加了:
import logging
log = logging.getLogger(__name__)
...
log.info("testing 123!")
可惜的是,没有生成任何日志文件。你们觉得我哪里做错了吗?还有没有更好的方法可以用来记录日志?我是在Webfaction上操作的。
1 个回答
2
在像Webfaction这样的地方,Django的Python日志功能还不错。如果你在一个云服务提供商上,比如亚马逊的EC2,那里有很多服务器,那么可以考虑把日志记录到键值数据库,或者通过网络使用Python日志。
你在settings.py中的日志设置代码看起来没问题,但我建议你检查一下是否能写入rootdir
。你的系统日志可能会显示错误,但更有可能的是,如果Django无法正常记录日志,它会抛出500错误。
这让我想起我在WebFaction上的日志设置,唯一的主要区别是我使用:
import logging
logging.info("Something here")
而不是log.info