- 我有細(本地和遠程服務器上)運行的Django項目。
我使用「遠程調試」配置文件在本地啓動pycharm,它看起來很好。
Starting debug server at port 4000 Use the following code to connect to the debugger: import pydevd pydevd.settrace('<my local machines public ip addr>', port=4000, suspend=False) Waiting for connection...
在遠程服務器上,我把相應的調用pycharm-debug.egg在
__init__.py
(但我試圖把它在代碼中的其他地方,太)。我啓動遠程服務器這樣
python manage.py runserver <remote domain name>:8000
並在當地pycharm IDE /調試器我看到:"Connected to pydev debugger (build 133.1347)"
在這之後,事情就坐在那裏......我不想得到任何反饋在pycharm IDE中執行和沒有能力來「啓動/繼續/運行」任何東西。
在遠程服務器上,如果我
<ctrl-c>
它,我看到:File "/<path here>/pycharm-debug.egg/pydevd.py", line 1256, in settrace File "/<path here>/pycharm-debug.egg/pydevd.py", line 1305, in _locked_settrace
我的猜測是正確完成所有連接,但我沒有看到一個方法來啓動運行一切。我有「暫停=錯誤」,所以我預料它會開始。當我嘗試在遠程服務器上顯示一個頁面時,我得到「未連接」,所以Web服務器顯然還沒有運行(如果curl http://<remote server domain>:8000
我得到curl: (7) Failed connect to <remote server domain>:8000; Connection refused
)。沒有遠程調試,這可以在我的本地開發機器或遠程服務器上正常運行。
我在做什麼錯? :) 謝謝!
詳情:
在遠程服務器上運行的代碼/過程中,我想在主
__init__.py
調試,我有:import os import sys BASE_DIR = os.path.dirname(os.path.dirname(__file__)) sys.path.append(BASE_DIR + '/pycharm-debug.egg') import pydevd pydevd.settrace('<my local machines public ip addr>', port=4000, suspend=False)
本地pycharm IDE表明這一點:
Starting debug server at port 4000 Use the following code to connect to the debugger: import pydevd pydevd.settrace('localhost', port=4000, suspend=False) (tried with <public ip addr> for this, too. Waiting for connection... ---- and then, after I start the remote server process: ---- Connected to pydev debugger (build 133.1347)
其他說明:
- 我已經在遠程服務器上使用和不使用virtualenv。
- 我正在一個普通的Comcast電纜調制解調器路由器後面運行本地pycharm IDE,端口轉發爲4000端口打開(並通過一個節點服務器連接到端口4000進行了測試,當我對它做了wget時,我的遠程服務器)。
我不知道如何「碰」任何東西讓事情運行,讓我開始調試。
感謝您的幫助。
有時候,pycharm只是需要重啓......真的。 –
嘿,是啊...也嘗試了幾次。 :) –
你是否也放棄了'suspend = False'?明確表示不設置斷點(請查看我的答案) –