troushoo

Linux 上のPython アプリケーションをVisual Studio からリモートデバッグ

概要

Linux 上のPython アプリケーションをVisual Studio からリモートデバッグする方法を紹介します。

内容

Linux 側の準備
1. ptvsd (Python Tools for Visual Studio remote debugging server) をインストールします。
ptvsd のインストールはpip を使ってインストールできます。

sudo pip install ptvsd


pip はUbuntu では以下のコマンドでインストールできます。
sudo apt-get update
sudo apt-get install python-pip


2. Linux でファイアウォールを使用している際は、リモートデバッグに使用するポートを開きます。デフォルトは5678 です。
iptables では、以下のコマンドでポートを開きます。

sudo iptables -A INPUT -p tcp --dport 5678 -j ACCEPT



利用するプログラムのソースコード
以下のプログラムをLinux で動かします。
リモートデバッグを有効にするには、以下のプログラムの最初の2行にもある「import ptvsd」「ptvsd.enable_attach(‘パスワード’)」が必要です。「パスワード」については後述します。
import ptvsd
ptvsd.enable_attach('test')
 
raw_input("pause")
 
number0 = 0
number1 = number0 + 1
 
print(number1)
ソースコードはGitHub にも公開しました。

リモートデバッグの手順
1. Visual Studio でPython プロジェクトを作成します。


2. リモートデバッグするPython のファイルと同じファイル名、同じソースコードであるファイルを作成します。


3. Linux でPython のプログラムを実行します。
python MyRemoteDebug.py


4. 「デバッグ」→「プロセスにアタッチ」を実行します。


5. 「トランスポート」を「Python remote (ptvsd)」にし、「修飾子」を「パスワード@リモートマシン名」と入力し「検索」をクリックします。
パスワードは、ソースコードのptvsd.enable_atttestach(‘パスワード’) で指定したパスワードです。


6. 「選択可能なプロセス」にPython のプロセスが表示されるので、選択の上「アタッチ」を実行します。


7. ブレークポイントを張り、Linux のPython を実行します。


8. Visual Studio にブレークし、デバッグ画面になります。


9. 変数の値の変更も可能です。


10. Python を実行すると、変数の値が変わっていることが確認できます。



情報元
Visual Studio Python Tutorial Deep Dive: Cross-platform Remote Debugging (英語)

関連記事
Linux 上の.NET アプリのCPU パフォーマンスをPerfView を用いて解析


  1. 2016/03/12(土) 22:22:18|
  2. Linux
  3. | トラックバック:0
  4. | コメント:0
<<Windows でプロセスをサスペンド/レジュームさせる2つの方法 | ホーム | Linux 上の.NET アプリのCPU パフォーマンスをPerfView を用いて解析>>

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://troushoo.blog.fc2.com/tb.php/279-ad47025b
この記事にトラックバックする(FC2ブログユーザー)

スポンサーリンク

最新記事

月別アーカイブ

カテゴリ

ツール (92)
ネットワーク (76)
Visual Studio (56)
SOS・Psscor2/Psscor4 (25)
WinDbg (25)
Linux (23)
Azure (17)
Tips (20)
英語 (1)
About Me (1)
未分類 (0)

全記事表示リンク

全ての記事を表示する

検索フォーム

RSSリンクの表示

リンク

このブログをリンクに追加する