2016-04-27 9 views
3

Wie Debuggen Kibana Backend-Quellcode?Debugging Kibana Backend Node.js Code

Ich vermute, node-inspector könnte verwendet werden. Und einige zusätzliche Konfiguration benötigt für package.json Datei Debugger bei npm start ausführen. Aber ich kann die korrekte Konfigurationssyntax nicht herausfinden.

Antwort

2
NODE_OPTIONS=--debug bin/kibana --dev 

Wenn Sie vor dem Start brechen wollen:

NODE_OPTIONS="--debug --debug-brk" bin/kibana --dev 

Alternativ können Sie die gleiche Variable gesetzt, wenn npm start Aufruf:

NODE_OPTIONS=--debug npm start 

Sie sehen:

Debugger listening on port 5858 

Sie Sie können dann den Knoteninspektor verwenden, indem Sie node-inspector ausführen und http://127.0.0.1:8080/debug?port=5858 öffnen.

Wenn Sie einen Remote-Server debuggen, können Sie entweder laufen node-inspector auf dem Server und Vorwärts-Port 8080 durch SSH, oder Sie können node-inspector lokal und nach vorn Port 5858 über SSH laufen.

EDIT: So wie es jetzt in den Kommentaren erwähnt wurde, könnte es um die Quelle zu bearbeiten und hinzufügen debugger; am Anfang, sonst Haltepunkte möglicherweise nicht richtig, auch bei der Verwendung von --debug-brk erforderlich sein. Nicht sicher warum.

+0

Es funktioniert! Vielen Dank. Die Codeausführung bricht jedoch nicht an einem Haltepunkt ab. Kannst du mir einen Hinweis geben warum? – trex

+0

Dies ist ein Problem, mit dem ich manchmal auch Probleme habe, wenn ich den Knoteninspektor verwende. Manchmal ist das Problem eine alte Version von node.js, entweder beim Debuggee oder Debugger, oder bei einer alten Knoteninspektorversion oder bei beiden ... – CherryDT

+0

Ok, ich gefunden, warum es für mich nicht funktioniert hat. ** Zuerst **, der Debug-Port könnte sich beim Neustart von Kibana ändern. Es änderte sich in meinem Fall auf "5861". Also habe ich die folgende URL verwendet, um auf die Debug-Konsole zuzugreifen: [http://127.0.0.1:8080/debug?port=5858](http://127.0.0.1:8080/debug?port=5858). ** Zweitens **, Sie müssen 'Debugger;' in einer neuen Zeile vor dem Quellcode, den Sie debuggen möchten. Warten Sie 2-3 Minuten, bis die Konsole geladen ist. Dann, nachdem es unterbrochen wurde, können Sie neue Haltepunkte über die Konsolen-Weboberfläche hinzufügen. – trex

0

hinzufügen $NODE_OPTIONS --no-warnings --inspect

und Kibana-Server starten und den Link in den Protokollen wie dieser Link „Chrom-devtools gezeigt zugreifen: //devtools/remote/serve_file/@521e5b7e2b7cc66b4006a8a54cb9c4e57494a5ef/inspector.html Experimente = true & v8only = true & ws = localhost: 5858/node "dann finden Sie Ihren Backend-Code in der Source-Registerkarte und Sie können ihn debuggen wie Frontend-Code debuggen.