【node.js】node inspectorでnode.jsをデバッグしてみた
今までconsoleデバッグで頑張ってきましたが、
業務でnodeを使うことが増え思い切ってデバックしてみることに...
環境設定もろもろ、エディタを乗り換えるみたいな面倒くささがあると勝手に
思っていたんですが、思いの外簡単ですんなり行けたのでメモ。。
使うのはnode-inspectorというモジュールで、Chromeを介してデバックを行います。
node inspectorのインストール
$ npm install -g node-inspector
debugのやり方
debugというオプションをつけてデバッグ対象のnodeアプリを起動します。
$ node --debug test.js
アプリを起動すると、debug portが表示される。
debugger listening on port 5859
別窓でnode-inspectorを起動する。(この例だとweb port=8081、debug portが先ほどの5859)
$ node-inspector --web-port 8081 --debug-port 5859
以下のようなメッセージが表示される。
Visit http://127.0.0.1:8889/?ws=127.0.0.1:8889&port=5859 to start debugging.
ここで、chromeにhttp://127.0.0.1:8889/debug?port=5859にアクセスすると、
debug consoleが起動します。
このへんのコマンドはbashのaliasやfunctionに書いてショートカットすると捗るかも。
.bashrc
alias nodeinspector='node-inspector --web-port 8889 --debug-port 5859' function nodedebug(){ command node --debug-brk=5859 $1; }
ちな、今回はphantom.jsのゴーストブラウザを使ったヘッドレス環境において
selenium-node.jsでのWEBサイトテスト行うといった業務内容だったんですが、
node inspectorは問題なく動いてましたね。