簡體   English   中英

實時調試Node.js應用程序?

[英]Live debugging a nodejs app?

如何調試正在運行的nodejs應用程序? 我已經找到了諸如node-inspector工具,但它似乎僅支持啟動應用程序並從那里進行調試。

調試正在運行的nodejs應用。

這是V8的少量文檔功能與node.js調試器客戶端的非文檔功能的結合。 假設您有一個要調試的已經運行的節點進程。

# start the remote debugger in the already running node process
kill -s USR1 pid
# attach to the debugger using the node.js client
node debug host:5858
# see where you are
debug> pause
debug> bt

從那里您可以四處張望。 您還可以繼續並再次暫停以查看是否似乎始終在同一代碼區中結束。

調試nodejs應用。

V8帶有廣泛的調試器,可通過簡單的TCP協議在進程外進行訪問。 Node具有此調試器的內置客戶端。 要使用此功能,請使用debug參數啟動Node。 出現提示:

% node debug myscript.js
< debugger listening on port 3000
connecting... ok
break in /home/username/Code/myscript.js:1
  1 x = 5;
  2 setTimeout(function () {
  3   debugger;
debug>
  • 續,c-繼續執行
  • 接下來,n-下一步
  • 步驟s-進入
  • 出去-走出
  • 暫停-暫停運行代碼

檢查API以獲取其他命令參考和其他詳細信息

您也可以使用node-inspector 從支持websocket的任何瀏覽器中使用它。 斷點,事件探查器,實時編碼等...真的很棒。

用安裝

npm install -g node-inspector

然后跑

node-debug app.js

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM