【问题标题】:Getting stack trace from web2py for EVERY error从 web2py 获取每个错误的堆栈跟踪
【发布时间】:2011-02-22 04:14:16
【问题描述】:

我通过 jsonrpc 将 web2py 与 javascript 客户端结合使用。我注意到对于某些错误,web2py 会分配一个票证并创建一个堆栈跟踪,然后我可以查看并确切知道错误发生的位置(就像在普通 python 中一样)。在其他情况下,web2py 只是通过 jsonrpc 响应向我发送错误,而不指定触发它的文件、函数或行,我只看到以下信息:

'message': u'IndexError: list index out of range', 'code': 100, 'data': None

由于我不知道这个错误发生在哪里,所以我真的没有很好的方法来调试它。我可以告诉 web2py 为每个错误打开一张票,或者至少通过 jsonrpc 提供更多信息吗?

【问题讨论】:

  • 根据book,在进行 RPC 调用时,“服务器上引发的任何异常都会传播回客户端”(我猜这就是您的案例中没有票证的原因)。不确定如何更改此设置或获取更多错误信息 - 我建议在 mailing list 上寻求更多帮助。

标签: web2py


【解决方案1】:

在 web2py gluon/tools.py 模块中,查找函数“serve_jsonrpc”。那里的异常处理是错误被捕获并重新打包为您从客户端看到的消息的地方。你应该能够在except子句中放置一些断点并找到问题

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-10-11
    • 2018-09-19
    • 1970-01-01
    • 2013-04-18
    • 2011-09-14
    • 1970-01-01
    • 1970-01-01
    • 2019-03-05
    相关资源
    最近更新 更多