关于调试:让 logging.debug() 在 Google App Engine/Python 上工作

Getting logging.debug() to work on Google App Engine/Python

我刚刚开始为 Google App Engine 构建 Python 应用程序。在 localhost 环境中(在 Mac 上)

我正在尝试通过 logging.debug() 将调试信息发送到 GoogleAppEngineLauncher 日志控制台,但它没有显示出来。但是,通过 logging.info()logging.error() 发送的任何内容都会显示出来。我在 logging.debug() 之前尝试过 logging.basicConfig(level=logging.DEBUG),但无济于事。

我错过了什么?


如果有人使用 Windows Google 应用程序启动器。可以在编辑 > 应用程序设置

下设置调试参数

在额外的命令行标志中,添加 --log_level=debug


标志是 --log_level debug.

具体来说,使用以下命令行启动您的开发服务器:

1
dev_appserver.py --log_level debug .

您可以通过运行 dev_appserver.py --help 找到此信息。以下是命令输出中的相关引用:

--log_level {debug,info,warning,critical,error}
the log level below which logging messages generated
by application code will not be displayed on the
console (default: info)

使用等号(即--log_level=debug)也可以,因为python脚本google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/devappserver2.py依赖于argparse模块,后者处理空格和等号的方式相同,如中所述官方文档。


在 Mac 上:

1) 单击编辑 > 应用程序设置

2) 然后将以下行复制并粘贴到"Extra Flags:"字段中

--log_level=调试

3) 点击更新

您的调试日志现在将显示在日志控制台中


设置 log_level 标志的另一种方法:

1
logging.getLogger().handlers[0].setLevel(logging.DEBUG)