2012-09-15 15 views

回答

10

節點巡視員/ --debug現在換成了檢查 見下面更新

#now deprecated/see below for update 

#install node-inspector 
npm install -g node-inspector 

#start node-inspector, listen on port 8080 (default) 
node-inspector --web-port=8080 

#in another terminal session/window: 
#while node-inspector is running, start your project in debug mode 
node --debug myproject.js 

現在你可以瀏覽到http://your_server:8080爲myproject.js

如果一個完整的調試會話遠程服務器是不是因爲防火牆或其他原因的遠程端口上的訪問,你可以從端口8080到本地計算機上創建一個ssh隧道到它的「localhost:8080」:

0在遠程服務器上
ssh -L 8080:localhost:8080 [email protected] -N 

,並在您使用http://localhost:8080你的本地計算機上的檢查模式調試遠程的NodeJS會議


更新2017年8月

開始節點保持這種運行:

node --inspect=0.0.0.0:9229 myproject.js 

或者如果您希望調試器在我的項目的第一行中斷。JS:

node --inspect-brk=0.0.0.0:9229 myproject.js 

然後在您的Chrome瀏覽器中打開以下網址:

chrome://inspect 

點擊 '配置...' 按鈕,並添加以下目標:

ip-or-name-of-server-running-node:9229 

你之後點擊'完成'按鈕,你應該看到你的遠程目標下的myproject.js。點擊檢查鏈接開始調試。不幸的是,檢查鏈接不適用於Ubuntu的Chrome 58。它適用於Windows的Chrome 60。

+0

您是否知道在運行流星服務器時,是否必須明確地啓動節點檢查器? – Gobliins

+0

謝謝!使用'chrome:// inspect /'工作正常,但VS編碼(連接但斷點不起作用)和IntelliJ IDEA(打印「連接到IP ...」)失敗,沒有其他事情發生。 –

+0

用於永久檢查並在您保存時重新加載使用此 'forever -w -c'node --inspect = 127.0.0.1:3333'file.js' – DarckBlezzer

9

使用node-inspector遠程調試從Chrome中,你已經開始與如你的--debug選擇您的節點應用所示。

0
  • 使用 $流浪漢的ssh - -L 5858:127.0.0.1:5858

    to ssh connect to VM. also this comment would start a proxy server on port 5858; 
    
  • 你可以測試使用telnet 127.0.0.1 5858,看看當地的代理服務器啓動與否。

  • 在虛擬機,你就可以開始使用節點命令

  • $節點--debug-BRK app.js在網絡風暴

  • 設置調試配置。
  • 當您在Web風暴中啓動調試時,VM中的node.js服務器將在幾秒鐘內啓動。

PS:有沒有必要去碰無業遊民文件。 參考:Connecting WebStorm to a remote node.js debugging session

+0

謝謝,這個作品。 – arcseldon

4

節點(> v6.3.0)和Chrome的最新版本現在允許您使用Chrome開發人員工具來debug a Node.JS process而無需安裝其他任何東西。只是通過--inspectnode

$ node --inspect script.js 

Debugger listening on port 9229. 
Warning: This is an experimental feature and could change at any time. 
To start debugging, open the following URL in Chrome: 
    chrome-devtools://SOME-URL-HERE 

只需在Chrome中打開該網址,你是好去。

如果您需要在節點啓動後立即暫停腳本,也可以在同一命令中傳遞--debug-brk

相關問題