我在 Google 应用引擎上有一个简单的 webapp2 应用。这是代码
# log.py.........................................................................
logging_defaults = {
'loglevel': 'DEBUG',
}
logging_config = """\
[loggers]
keys=root
[handlers]
keys=stderr
[formatters]
keys=default
[logger_root]
level=%(loglevel)s
handlers=stderr
[handler_stderr]
class=StreamHandler
level=NOTSET
formatter=default
args=(sys.stderr, )
[formatter_default]
format=%(asctime)s %(levelname)s %(name)s:%(lineno)d %(message)s
datefmt=
"""
import logging
import logging.config
import logging.handlers
from cStringIO import StringIO
config_file = StringIO(logging_config)
logging.config.fileConfig(config_file, logging_defaults)
l = logging.getLogger(__name__)
# helloworld.py......................................................
import webapp2
from log import l
class MainPage(webapp2.RequestHandler):
def get(self):
l.debug('debug message')
l.info('info message')
l.warn('warn message')
l.error('error message')
l.critical('critical message')
self.response.headers['Content-Type'] = 'text/plain'
self.response.write("hello me!! It's me here ;)")
app = webapp2.WSGIApplication([('/', MainPage)],
debug=True)
这是应用引擎仪表板中生成的日志的屏幕截图
如您所见,日志显示正常,但每个日志都标有“E”,即使它不是错误,也表示错误。据我所知,每次使用时都会发生这种情况
logging.config.fileConfig()
有解决这个问题的方法吗?
PS:我知道还有其他方法可以配置日志记录。但我只要求 fileConfig() 。
更新:我尝试使用 fileConfig() 从真实文件加载并使用 dictConfig() 但每次问题仍然存在。