我使用的是最新版本的 Google App Engine、Python 2.7 和 webapp2,但启用 Debug模式只会给我一个空白的错误 HTML 页面,而不是显示错误和堆栈跟踪。这似乎不是预期的行为:
“在 Debug模式下,现在捕获的任何异常都会被引发,堆栈跟踪会显示给客户端” http://webapp-improved.appspot.com/guide/app.html
我做错了什么吗?如果没有,我如何使用 webapp2 中的自定义错误处理程序打印堆栈跟踪?
谢谢。
编辑:这是一个重现错误的示例应用程序:
应用.yaml
application: testapp
version: 1
runtime: python27
api_version: 1
threadsafe: true
handlers:
- url: /.*
script: main.app
libraries:
- name: jinja2
version: "2.6"
主要.py
import webapp2
# Run application
app = webapp2.WSGIApplication([webapp2.Route('/', handler='handlers.IndexHandler')], debug=True)
因为没有包含 IndexHandler 的名为“handlers.py”的文件,所以此应用会引发 500 服务器错误。但即使 debug = True,该应用程序也只是显示一个空页面,并且不输出错误和堆栈跟踪,除了在 App Engine 日志中。
我还没有在生产服务器上尝试过。
请您参考如下方法:
似乎这个错误在最新版本的 webapp2 中得到了修复: http://code.google.com/p/webapp-improved/source/detail?r=da20281cbba3f593ca49667752c0a2395ea483c5
我想这个修复最终会包含在 App Engine SDK 中。
