NEWS
(gelöst) Adapter Debuggen mit VSCode in Docker
-
Nachdem ich mir die beiden Einträge "Adapter debuggen mit VSCode" und "Adapter debuggen mit Chrome" angesehen habe, versuche ich nun einen Adapter mit VSCode in einem Docker zu debuggen:
- im Adapter-Ordner ist ein
.vscode
-Ordner mit der Dateilaunch.json
angelegt, mit folgendem Inhalt:
- mit "PuTTY" wird nun der Adapter mittels
iobroker stop iobroker.[adaptername]
gestoppt (-> Ausgabe:The adapter "[adaptername].0" was stopped.
) - anschliessend
main.js
in VSCode öffnen und Breakpoint setzen - in "PuTTY" in den Adapter Ordner wechseln
- in "PuTTY" mit folgender Eingabe den Prozess starten:
node --inspect-brk=192.168.1.xxx:9229 main.js --force --logs
(-> Ausgabe:Debugger listening on ws://192.168.1.xxx:9229/68baa8b4-ef86-4e84-a16e-37488d609522
) - in VSCode
Run and Debug
-> Modusattach
wählen und grünerPlay
- Button gedrückt - VSCode springt im Debugger an die erste Zeile und wartet; so weit so gut
Nun: wie komme ich zum Breakpoint?
Mittels Taste
F5
(Continue) bricht er ab, mittels TasteF10
(Step Over) funktionieren jedoch die EinzelschritteHat da ggf. jemand einen Tipp?
System:
- buanet/ioBroker.docker: v5.1.0
- node.js: v12.22.2
- NPM: v6.14.13
- js-controller: 3.3.14
- Win10
- VSCode: v1.58.2
- im Adapter-Ordner ist ein
-
@ice987
Du müsstest in vscode in der entsprechenden.gewünschten codezeile einen breakpoint setzen können
https://code.visualstudio.com/docs/editor/debugging#_breakpointsWenn der Code bei der ersten Zeile gestoppt hat dann breakpoint setzen und F5 drücken.
Entweder hält die Ausführung an dieser Stelle wenn sie dort überhaupt vorbeikommt oder es wird ein Fehler in eine der Konsolen angezeigt. -
@oliverio
Das funktioniert: der Trick ist, den Breakpoint erst zu setzen, nachdem der Debugger auf der 1. Zeile stehen bleibt.
Vielen Dank!