重定向Django Runserver输出以便使用pudb进行调试

时间:2018-10-24 17:34:15

标签: django tty pudb

我当前正在尝试使用pudb对Django应用程序进行故障排除。 为此,我运行的是runserver而不是gunicorn

然后,当我想调试时,我添加了:

import pudb; pu.db

pudb gui可以正确显示,但很快会被运行服务器的输出弄乱。

根据pudb documentation,我可以通过在启动服务器之前设置PUDB_TTY变量来避免这种情况。

$ tty
/dev/pts/3
$ PUDB_TTY=/dev/pts/3 manage.py ... runserver ...

不幸的是,GUI仍然被服务器的输出弄乱了。

或者,我尝试重定向运行服务器(>/dev/null 2>&1)的所有输出,但是pudb的输出也被捕获(显然)。

有没有办法:

  • 运行服务器没有产生任何输出吗?
  • 调整pudb吗?

1 个答案:

答案 0 :(得分:1)

TTY重定向功能似乎仅在Development分支中可用

我能够使用它:

$> git clone https://github.com/inducer/pudb
$> cd pudb
$> python setup.py install

在1号航站楼:

$> tty 
   # Outputs: /dev/pts/5
$> perl -MPOSIX -e pause

在2号航站楼:

$> PUDB_TTY=/dev/pts5 python manage.py runserver