如何写入 Google App Engine 中的控制台?
通常,当我编码时,我只是喜欢将一些小东西(主要是变量的当前值)打印到控制台。 尽管我注意到 Google App Engine 启动器确实有一个日志终端,但我没有看到 Google App Engine 有类似的情况。 有没有办法使用 Google App Engine 写入所述终端或其他终端?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(11)
您将需要使用 Python 的标准
logging
模块。要在 GoogleAppEngineLauncher 日志控制台中查看对
logging.debug()
的调用,您必须首先将标记--dev_appserver_log_level=debug
添加到您的应用。 但是,请注意,您会看到 App Engine SDK 本身产生的大量调试噪音。 全套级别是:debug
info
warning
error
ritic
您可以通过双击来添加标志应用程序,然后将其放入额外标志字段中。
You'll want to use the Python's standard
logging
module.To see calls to
logging.debug()
in the GoogleAppEngineLauncher Logs console, you have to first add the flag--dev_appserver_log_level=debug
to your app. However, beware that you're going to see a lot of debug noise from the App Engine SDK itself. The full set of levels are:debug
info
warning
error
critical
You can add the flag by double clicking the app and then dropping it into the Extra Flags field.
请参阅 https://cloud.google.com/appengine/docs/python/requests# Python_Logging
和 http://docs.python.org/library/logging.html
你可能想要使用类似的东西:
See https://cloud.google.com/appengine/docs/python/requests#Python_Logging
and http://docs.python.org/library/logging.html
You probably want to use something like:
@Manjoor
你可以在java中做同样的事情。
请参阅 http://code.google.com/appengine/docs/ 中的“日志记录” java/runtime.html
@Manjoor
You can do the same thing in java.
See "Logging" in http://code.google.com/appengine/docs/java/runtime.html
如果您使用的是较新版本的 Python 开发服务器(版本 > 1.7.6,或 2013 年 3 月及更高版本),这些似乎是正确的使用步骤:
在脚本中包含以下内容,< /p>
导入日志记录
logging.debug("something I Want to log")
并且按照 此文档页面,通过转到“编辑”>“设置标记” 应用程序设置> 启动设置> 额外的命令行标志,并添加,
--log_level=debug
If you're using a more recent version of the Python Development Server (releases > 1.7.6, or Mar 2013 and later), these seem to be the right steps to use:
Include the following in your script,
import logging
logging.debug("something I want to log")
And per this docs page, set a flag by going to Edit > Application Settings > Launch Settings > Extra Command Line Flags, and adding,
--log_level=debug
您还应该看看 FirePython。 它允许您在 firebug 中获取服务器日志消息。
http://appengine-cookbook.appspot.com/recipe /firepython-logger-console-inside-firebug/
You should also give FirePython a look. It allows you to get server log messages in firebug.
http://appengine-cookbook.appspot.com/recipe/firepython-logger-console-inside-firebug/
在我的网站学习 Python 上查看在 Google App Engine 上运行的在线 Python 解释器。 这可能就是您正在寻找的。 只需对您想要查看的内容使用 print repr(variable) 即可,并执行任意多次。
Check out my online Python interpreter running on Google App Engine on my website, Learn Python. It might be what you're looking for. Just use print repr(variable) on things you want to look at, and execute as many times as you want.
您好,我使用的是 GoogleAppEngineLauncher 1.8.6 版本,您可以使用标志来设置您想要查看的消息日志级别,例如调试消息:
--dev_appserver_log_level debug
使用它而不是
--debug
(参见@Christopher 的回答)。Hello I'm using the version 1.8.6 of GoogleAppEngineLauncher, you can use a flag to set the messages log level you want to see, for example for debug messages:
--dev_appserver_log_level debug
Use it instead of
--debug
(see @Christopher answer).GAE 将捕获标准错误并将其打印到控制台或日志。
GAE will capture standard error and print it to the console or to a log.
使用 log.setLevel(Level.ALL) 查看消息
默认的消息过滤级别似乎是“错误”。 在使用 setLevel() 方法使 .info 和 .warning 消息可见之前,我没有看到任何有用的日志消息。
打印到 System.out 的文本也没有显示。 它似乎被解释为 log.info() 级别的消息。
Use log.setLevel(Level.ALL) to see messages
The default message filtering level seems to be 'error'. I didn't see any useful log messages until I used the setLevel() method to make the .info and .warning messages visible.
Text printed to System.out wasn't showing up either. It seems to be interpreted as log.info() level messaages.
我希望我正在回答这个问题。 日志消息打印到 AppEngine 日志而不是终端。
你可以启动它
点击 AppEngine 启动器的日志按钮
I hope i am answering the question. The logging messages print to the AppEngine log rather than the terminal.
You can launch it
by clicking on the logs button of the AppEngine Launcher
使用
logging
模块是很好的做法,< /a> 但这不是必需的。您只需执行普通的
print()
即可写入 Google App Engine 日志控制台。Using the
logging
module is good practice, but it's not required.You can just do plain-old
print()
s to write to the Google App Engine Log Console.