はじめに
このエントリでは、Ubuntu 10.10上にnode-inspectorとnode.jsをインストールし、node.jsをデバッグ(ステップ実行)する手順について書いています。このエントリを書くにあたり、以下のエントリを参考にさせていただきました。
node-inspectorは、サーバサイドのJavaScriptをブラウザ上(Webkit系のブラウザ)でデバッグできるようにしてくれるライブラリです。
node-inspectorってのがあって、これがあると
chrome上(webkit系ならいけるらしい)でクライアントサイドのjsデバッグみたいに
サーバサイドのjsもデバッグできる。
でもnode.js0.3以上がないと動かないので注意。
node.jsでのデバッグ方法 - すにぺっと
動作環境
- VirtualBox 4.0.4 + Ubuntu 10.10
- node.js 0.4.0
- node-inspector 0.1.6
- Google Chrome 9.0.597.98
node.jsのインストール
node.jsのインストールに関しては、こちらのエントリを参照してください。
npmのインストール
node.jsのパッケージ管理システムnpmをインストールします。
curl http://npmjs.org/install.sh | sudo sh >(中略) >npm info preactivate npm@0.3.4 >npm info activate npm@0.3.4 >npm info postactivate npm@0.3.4 >npm info build Success: npm@0.3.4 >npm ok >It worked
npmのインストールがうまくいかない場合は、こちらのエントリを参照してください。
node-inspectorのインストール
npmを使ってnode-inspectorをインストールします。現在の最新版である0.1.6を入れてみます。
sudo npm install node-inspector@0.1.6 >(中略) >npm info build Success: node-inspector@0.1.6 >npm ok
サンプルコードを用意する
node.jsでのデバッグ方法 - すにぺっと に記載されているサンプルコードそのままですが、とりあえず/usr/local/src/testにtest.jsという名前で格納します。
var http = require('http'); var x = 0; http.createServer(function (req, res) { x += 1; res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('Hello World ' + x); }).listen(8124); console.log('Server running at http://127.0.0.1:8124/');
node-inspectorの起動
以下のコマンドでnode-inspectorが起動します。
node-inspector >visit http://0.0.0.0:8080/debug?port=5858 to start debugging
node.jsデバッグモード
端末をもう1枚起動して、node.jsをデバッグモードで起動します。
cd /usr/local/src/test node --debug test.js >debugger listening on port 5858 >Server running at http://127.0.0.1:8124/
デバッグしてみる
1. Google Chromeを起動して、http://127.0.0.1:8080/debug?port=5858にアクセスします。Google ChromeのInspectorが起動するので、さきほど作成したtest.jsを選択します。
2. test.js内にブレークポイントを設定します。行番号のあたりをクリックするとブレークポイントが設定できます。
3. Google Chromeのタブをもう1枚開き、http://127.0.0.1:8124/にアクセスします。すると、1枚目のタブでスクリプトがブレークポイントでストップして、ステップ実行することができるようになります。