1

我遵循了 Web2py 手册中的详细信息,并以这种方式设置了我的记录器:

我首先将 Web2py 根目录中的配置文件“logging.example.conf”重命名为“logging.conf”,并将“myapp”添加到记录器列表中

[loggers]
keys=root,rocket,markdown,web2py,rewrite,app,welcome,myapp

并添加一个单独的“logger_myapp”部分

[logger_myapp]
level=DEBUG
qualname=web2py.app.myapp
handlers=consoleHandler
propagate=0 

然后在 myapp 的一些模型文件中,我写道:

import logging
logger = logging.getLogger("web2py.app.myapp')
logger.setLevel(logging.DEBUG)

在同一个模型文件的某个地方,我尝试通过以下方式测试日志记录:

logger.debug("Check: %s" % details)

wheredetails只是一个保存字符串的变量

但是,当我从命令行运行 Web2py 时,即python web2py.py执行模型文件时,我看不到控制台输出任何内容。

我在这里错过了什么?

4

1 回答 1

3

您可能只需要将 handler_consoleHandler 的级别设置为 DEBUG。记录器和处理程序都有与之关联的级别,并且任何一个都可以过滤您的输出。

[handler_consoleHandler]
class=StreamHandler
level=DEBUG <<<<<<<<<<<<<<<<
formatter=simpleFormatter
args=(sys.stdout,)
于 2012-04-18T00:04:33.077 回答