所以我使用的是微服务python包 nameko ,它使用eventlet
运行服务并在导入时调用eventlet.monkey_patch()
。
我已经破译说这段代码阻止了ipdb
的任何调试尝试。 ipdb
控制台显示在终端中,但我无法输入任何内容,必须关闭整个终端会话才能退出该过程。
如何在此功能中使用ipdb
?
编辑:此问题仅似乎发生在docker容器中。
答案 0 :(得分:2)
很抱歉,没有方便的解决方案,现在您最好的选择是在使用ipdb时跳过docker(您可以从docker中提取文件系统映像并在另一个虚拟化中运行它,例如qemu,Virtualbox,systemd-nspawn)。请参阅https://github.com/larsks/undocker以获取帮助。
其他要尝试的事情(可能无效,请分享结果):
pip install https://github.com/eventlet/eventlet/archive/master.zip