如何临时禁用Google App Engine应用中的AppStats?
我最近把我的应用程序设置成使用GAE的新功能AppStats。不过在调试的时候,AppStats产生的日志信息太多了,实在让人烦。我想在调试的时候把它关掉,等调试完再打开。肯定有一行简单的代码可以加到配置文件里,帮我实现这个功能。
2 个回答
0
我知道这个问题有点老了,但我想说说这个方法:
可以添加一个叫 config.py 的文件,在里面定义一个 DEBUG 标志(如果你在其他地方已经定义过,那就更好了)。然后:
from config import DEBUG
def webapp_add_wsgi_middleware(app):
if not DEBUG:
from google.appengine.ext.appstats import recording
app = recording.appstats_wsgi_middleware(app)
return app
补充一下:这个方法的好处是,你可以在应用的其他地方也使用这个调试标志。
4
查看配置appstats的文档:配置是通过在你应用的根目录下创建一个自己的appengine_config.py
文件来完成的。关于这个配置文件你可以做什么,最好的参考就是SDK里提供的示例文件,你也可以在这里查看。要禁用统计功能,如果你使用的是Django,只需在你的Django settings.py
文件中注释掉这一行
google.appengine.ext.appstats.recording.AppStatsDjangoMiddleware
如果你不使用Django,就在你的appengine_config.py
文件中应该有的函数里,找到并阅读
def webapp_add_wsgi_middleware(app):
from google.appengine.ext.appstats import recording
app = recording.appstats_wsgi_middleware(app)
return app
只需注释掉函数体的前两行,改成这样
def webapp_add_wsgi_middleware(app):
# from google.appengine.ext.appstats import recording
# app = recording.appstats_wsgi_middleware(app)
return app
如果你坚持要做成单行修改,你可以不注释from
语句——其实它是无害的,虽然可能会稍微影响性能(这就是为什么我会注释掉它,尽管它是无害的;-)。