Отладка запущенного процесса python

Есть ли способ увидеть stacktrace того, что различные потоки делают внутри процесса python?

Предположим, что у меня есть поток, который позволяет мне иметь какой-то удаленный доступ к процессу.

Ответы

Ответ 1

Winpdb - графический отладчик GPL Python с независимой платформой с поддержкой удаленной отладки по сети, несколько потоки, изменение пространства имен, встроенная отладка, зашифрованная связь и до 20 раз быстрее, чем pdb.

Особенности:

  • Лицензия GPL. Winpdb - бесплатное программное обеспечение.
  • Совместимость с CPython с 2.3 по 2.6 и Python 3000
  • Совместимость с wxPython 2.6 - 2.8
  • Независимая платформа и протестирована на Ubuntu Gutsy и Windows XP.
  • Пользовательские интерфейсы: rpdb2 основан на консоли, а для winpdb требуется wxPython 2.6 или новее.

Снимок экрана http://winpdb.org/images/screenshot_winpdb_small.jpg

Ответ 2

Около 4 лет назад, когда я использовал скручен, люк был отличным способом сделать то, что вы просите.

http://twistedmatrix.com/projects/core/documentation/howto/telnet.html

В настоящее время большинство моих проектов не используют скрученные, поэтому я просто WingIDE удаленные отладочные крючки, чтобы заинтриговать запущенный процесс.

http://www.wingware.com/doc/debug/remote-debugging