私のUbuntuシステムにスレッドがある実行中のPythonサービスをデバッグしたいと思います。実行中のルートプロセスをリンクし、Pythonスクリプトにブレークポイントを配置できる必要があります。
これを行うための最良の方法は何ですか?
答え1
pdb
これにはPythonデバッガを使用できます。モジュールにインポートするか、インタラクティブに使用できます。 2.7の文書は次のとおりです。https://docs.python.org/2/library/pdb.html
答え2
私のプロジェクトが利用可能ですクレイジー。実行中のPythonプログラムに接続し、現在の端末でデバッグできるPythonデバッガです。 Python3pyrasite
に似ていますpyringe
が、サポートし、gdbは必要なく、デバッガと一緒に使用されますIPython
(カラーとオートコンプリート機能を持つpdbを意味します)。
たとえば、スクリプトが停止している場所を確認するには、次のように実行できます。
madbg attach <pid>
次に、デバッガシェルに次のように入力します。
bt