如何让pylons在控制台上打印Traceback?

时间:2010-12-23 23:43:44

标签: command-line pylons traceback

我希望能够在命令行上看到我正在运行paster的任何错误。我的大多数应用程序都是AJAX,所以交互式调试器在大多数时候都没有帮助我,而且我已经厌倦了一直复制网址。

文档不太清楚,所以请帮忙。

更新: 进一步阅读文档告诉我,它与ErrorHandler middleware有关,它将在生产中生成ErrorMiddleware,在dev中生成EvalException中间件。我正在寻找的是使EvalException仍然发出回溯而不仅仅是控制台的调试链接的一些方法。我不想删除交互式调试器的现有功能。只需要我的追溯并吃掉它。

2 个答案:

答案 0 :(得分:0)

如果我正确理解了问题,那么您需要的是粘贴的--verbose选项。尝试使用它运行它,看看是否在控制台上显示回溯错误。粘贴的命令行选项are documented here

作为对此的补充,请考虑使用the logging module as documented by the Pylons book并通过Python代码自由地散布log.warn("foo")消息,以在您感兴趣的程序执行块中公开其内部状态。这些将显示当你使用--verbose时,在控制台上,这应该有所帮助。

答案 1 :(得分:0)

如果你正在使用jQuery,你可以尝试配置它,以便AJAX错误将在浏览器中以与“正常”错误相同的方式显示..这样的事情:

$.ajaxSetup({
    error: function(xhr, errtype, e){
        $("html").html(xhr.responseText);
    }
});