実行中のPythonプロセスのデバッグ

実行中のPythonプロセスのデバッグ

私の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

関連情報