Django日志:日志未创建
我在GAE开发服务器上运行我的应用程序,并且使用了app-engine-patch来运行Django。
我有一个视图出问题了,所以我想记录下发生的所有事情。
我在myapp.views里添加了:
import logging
LOG_FILENAME = '/mylog.txt'
logging.basicConfig(filename=LOG_FILENAME,level=logging.DEBUG)
我的函数是:
def function(string):
logging.debug('new call')
#do stuff
#logging.debug('log stuff')
我的问题是我找不到日志。当我运行我的应用时没有错误,但日志没有生成。
我还尝试了不同的路径:/mylog.txt,mylog.txt,c:\mylog.txt,c:\complete\path\to\my\app\mylog.txt,但都不行。
另一方面,我尝试创建并运行一个单独的测试:
#test.py
import logging
LOG_FILENAME = '/mylog.txt'
logging.basicConfig(filename=LOG_FILENAME,level=logging.DEBUG)
logging.debug('test')
结果日志顺利生成了:c:\mylog.txt
我对日志记录不太熟悉,所以不知道是不是Django或者appengine有问题。
谢谢
3 个回答
0
默认情况下,dev_appserver 不会显示调试日志。如果你想开启这个功能,可以在运行时加上 --debug
这个选项。需要注意的是,dev_appserver 自己也会使用同样的日志记录工具,这样会输出很多你可能不太关心的调试信息。
你的日志信息会打印到错误输出(stderr)中。
0
我猜问题出在你把日志配置放在了视图里。对于Django的日志设置,有个简单的原则就是应该把日志配置放在settings.py文件里。
3
在App Engine上,你不能直接写文件,所以如果你试图把日志记录到文本文件里,那也是行不通的。日志输出会在开发时显示在SDK控制台,或者在生产环境中显示在日志控制台里。