Pty插件
-自uWSGI 1.9.15起可用,Linux, OpenBSD, FreeBSD和OSX皆支持。
这个插件允许你附加伪终端到你的应用上。
目前,只能在第一个worker上附加(并通过网络公开)伪终端服务器(未来会移除该限制)。
该插件还公开了一个客户端模式 (避免你把它跟netcat, telnet或者screen设置混在一起)
构建它
默认构建配置文件中并不包含这个插件,因此,你必须手工构建它:
- python uwsgiconfig.py --plugin plugins/pty [profile]
(如果你不使用默认的构建配置文件,那么记得指定它)
例子1:Rack应用共享调试
- UWSGI_PROFILE=ruby2 UWSGI_EMBED_PLUGINS=pty make
- ./uwsgi --rbshell="require 'pry';binding.pry" --socket /tmp/foo.socket --master --pty-socket :5000
- ./uwsgi --pty-connect :5000
例子2:IPython控制线程
- import IPython
- from uwsgidecorators import *
- # only worker 1 has the pty attached
- @postfork(1)
- @thread
- def tshell():
- while True:
- IPython.embed()