Le basi:PyCharm debug remoto - connessioni, ma non può avviare il debug
- Ho un progetto Django che funziona bene (sia localmente che su un server remoto).
Avvio pycharm localmente utilizzando un profilo di "debug remoto" e sembra buono.
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...
Sul server remoto, ho messo la chiamata appropriata per PyCharm-debug.egg in
__init__.py
(ma ho provato a mettere in altri punti del codice, anche).ho avviare il server remoto come questo
python manage.py runserver <remote domain name>:8000
e sul PyCharm IDE/debugger locale vedo:"Connected to pydev debugger (build 133.1347)"
Dopo questo, le cose semplicemente seduto lì ... non ho ricevuto alcune risposte su dove l'esecuzione è e nessuna abilità nell'IDE di pycharm per "avviare/continuare/eseguire" qualcosa.
Sul server remoto se
<ctrl-c>
, lo vedo: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
La mia ipotesi è che tutto è collegato correttamente, ma non sto vedendo un modo per iniziare tutto in esecuzione. Ho "suspend = False" quindi mi sarei aspettato che iniziasse. Quando provo a richiamare una pagina contro il server remoto, ottengo "non connesso" quindi il server Web non è ovviamente ancora in esecuzione (se curl http://<remote server domain>:8000
ottengo curl: (7) Failed connect to <remote server domain>:8000; Connection refused
). Senza il debug remoto, funziona perfettamente con la mia macchina di sviluppo locale o sul server remoto.
Cosa sto sbagliando? :) Grazie!
Dettagli:
Sul server remoto che esegue il codice/processo che voglio eseguire il debug nel principale
__init__.py
ho: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)
locale PyCharm IDE mostra questo:
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)
Altre note:
- Ho provato questo con e senza virtualenv sul server remoto.
- Sto eseguendo l'IDE pycharm locale dietro un normale router modem via cavo Comcast con port-forwarding per la porta 4000 attivata (e testato con un server nodo che si collega alla porta 4000 che ha funzionato bene quando ho fatto un wget contro di esso da il mio server remoto).
Sono in perdita su come "eseguire il bump" di qualsiasi cosa per far funzionare le cose e avviare il debug.
Grazie per aver cercato di aiutare.
a volte, pycharm ha solo bisogno di un riavvio ... davvero. –
heh, sì ... ci ho provato anche un paio di volte. :) –
hai anche rilasciato il comando 'suspend = False'? che dice esplicitamente di non impostare un breakpoint (controlla la mia risposta) –