Eri*_*c P 5 python django error-logging
我想让Django登录在我们的开发服务器上工作.我已经阅读了如何在django站点上记录服务器错误,这似乎是关于该主题的确定答案,并已将配置从答案/sf/answers/447708621/复制到我的settings.py(更改输出当然是WatchedFileHandler的文件;并添加我的管理员电子邮件地址settings.ADMINS).
当我在网站上引发错误500时,AdminEmailHandler和WatchedFileHandler都没有做他们应该做的事情.我已settings.DEBUG到False,并证实了Django的可发送电子邮件和写入文件.我也尝试直接从Django shell登录:
$ /usr/local/pythonenv/DJANGO/bin/python manage.py shell
...
>>> import logging
>>> l = logging.getLogger('django')
>>> l.handlers[0]
<logging.handlers.WatchedFileHandler instance at 0xcd3b48>
>>> l.error("This should write to a file")
>>> l = logging.getLogger('django.request')
>>> l.handlers[0]
<django.utils.log.AdminEmailHandler instance at 0xcd37e8>
>>> l.error("This should email the addresses in settings.ADMINS")
Run Code Online (Sandbox Code Playgroud)
在上述情况下,记录器都没有发出窥视.
但是,通用Python日志记录将起作用(至少对于该文件),证明它不是文件权限问题:
$ python # (or /usr/local/pythonenv/DJANGO/bin/python manage.py shell)
...
>>> import logging
>>> logging.basicConfig(filename='/path/to/same/file/as/above', level=logging.DEBUG)
>>> logging.error("This one shows up")
Run Code Online (Sandbox Code Playgroud)
如上所述,Django可以并且很乐意在我的项目的其余部分发送电子邮件,而不是在这种情况下.
WatchedFileHandler在我的本地机器上使用相同的配置(当然除了文件路径); 该AdminEmailHandler没有,但我怀疑这是因为我使用Gmail作为电子邮件服务器的描述在这里.(本地机器是Windows 7;配置不起作用的dev服务器是Debian 6.0.3.)
我觉得好像缺少一些简单而明显的东西但是花了大半天的时间试图找出它可能是什么.关于我可能错过了什么配置,或者我应该尝试哪些其他故障排除的任何建议,找出为什么Python的日志记录有效,但Django没有?
| 归档时间: |
|
| 查看次数: |
814 次 |
| 最近记录: |