1

我正在尝试调试此代码。有了这个目标,我正在尝试按照本教程使用日志记录。带着这个目标,我在我的脚本中插入了这段代码:

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 错误。

4

2 回答 2

1

您是在尝试在 Google App Engine 上运行记录器,还是在您的本地计算机上无法运行?如果它在 GAE 上不起作用,那是因为您已将记录器设置为写入文件,而 GAE 并没有真正让您访问文件系统。

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

http://localhost:8080/_ah/admin

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

于 2012-08-14T01:35:05.290 回答
1

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

所以你可以试试:

logging.info('This is a log message.')
于 2012-08-14T01:38:27.910 回答