如何在GAE下查看记录模块输出模块?

时间:2012-08-14 00:35:06

标签: python google-app-engine logging

我正在尝试调试this code。有了这个目标,我正在尝试使用this tutorial之后的日志记录。有了这个目标,我在我的脚本中插入了这段代码:

import logging

logging.basicConfig(level=logging.DEBUG, format='%(asctime)s - %(levelname)s - %(message)s')

logging.debug('This is a log message.')

而且,在我想要获取消息记录的部分中,我以这种方式插入了行:logging.debug ('This is a log message.')

def fcount(self,f,cat):
    res = db.GqlQuery("SELECT * FROM fc WHERE feature =:feature AND category =:category", feature = f, category = cat).get()
    logging.debug('This is a log message.')
#    res=self.con.execute(
#      'select count from fc where feature="%s" and category="%s"'
#      %(f,cat)).fetchone()
    if res is None: return 0
    else:
        res = fc.count
        return float(res)

事实证明我的应用程序是GAE应用程序。而且我看不到日志消息,它不会出现在浏览器或PyScripter IDE中。我应该在哪里看到带有日志消息的屏幕?

PS - 我尝试使用此代码交替将日志消息写入文件:

import logging
logging.basicConfig(filename='log_filename.txt', level=logging.DEBUG, format='%(asctime)s - %(levelname)s - %(message)s')
logging.debug('This is a log message.') 

但我发现一个I / O错误。

2 个答案:

答案 0 :(得分:1)

您是在尝试在Google App Engine上运行记录器还是在本地计算机上无法运行?如果它不能用于GAE,那是因为您已经设置了记录器来写入文件,而GAE实际上并不允许您访问文件系统。

对于非基于文件的日志,您可以在GAE管理控制台中找到日志。 (在您的本地主机上,它位于

http://localhost:8080/_ah/admin

有关如何使用GAE上运行的日志记录模块的信息,请参阅https://developers.google.com/appengine/articles/logging

答案 1 :(得分:1)

我无法向您提供有关PyScripter的详细信息,但您需要将IDE设置为将-d(或--debug)标志传递给dev_appserver.py。这会启用DEBUG日志,否则您只会看到级别INFO或更高级别的消息。

所以你可以试试:

logging.info('This is a log message.')