如何远程调试Django应用程序?

时间:2011-03-21 08:58:41

标签: python django debugging



我创建了一个Django应用程序,它在我的机器上工作正常 之后我在测试服务器上检查了它,但是有些东西不起作用。
我该怎么调试呢? 是否有可能使用PyDev Eclipse插件或者还有其他一些方法吗?
在最好的情况下,我想使用“step into”,“step over”,“step out”但如果不可能,简单的日志记录也可以。

更新:
在我的机器上,它以./manage.py runserver运行,但在测试机器上运行Apache + mod_wsgi

3 个答案:

答案 0 :(得分:3)

这是通过mod_wsgi部署的调试应用程序的HOWTO:

http://code.google.com/p/modwsgi/wiki/DebuggingTechniques

您是否拥有测试机器的root权限?那样会更容易。您可以停止Apache服务并将其以单一进程模式启动以进行调试。

答案 1 :(得分:0)

我会说使用https://github.com/django-extensions/django-extensions - 一个为django添加了许多功能的插件。一个是./manage.py runserver_plus,它会在出现问题时将终端添加到服务器的错误消息(以及更多)。它是调试的理想选择。

不确定如何将其与wsgi一起使用,但快速搜索应该会找到几个结果。

答案 2 :(得分:0)

最简单的方法是暂时设置DEBUG = True,这应该适用于大多数问题。如果您正在进行生产,因此出于安全考虑而不想更改该设置,我建议您使用sentryscreenshot),这是一个非常好的仪表板式的错误和问题概述在你的Django网站上。

不幸的是,这两种解决方案都不会为您提供逐行调试。