Node.js の開発時にconsole.log でスクリプトの中のデータを
確認してしまいがちなのですが、やっぱり node-inspector を使ったほうが
効率が良かったりする。
使い方
node-inspector をインストール
$ npm install -g node-inspector
--debug-brk をつけて実行
$ node --debug-brk app.js
debugger listening on port 5858
node-inspector を実行
$ node-inspector
Node Inspector v0.7.4
Visit http://127.0.0.1:8080/debug?port=5858 to start debugging.
ChromeやSafariなどでwebブラウザでアクセス。
$ open "http://127.0.0.1:8080/debug?port=5858" # macなら
こんな感じで画面が表示される。
s
mochaでも使える
テストフレームワークのmochaでも使える。
起動時に--debug-brkを指定する。
$ mocha  --debug-brk app.js
debugger listening on port 5858 
grunt経由で使う
nodemonでexpressを立ち上げながら、node-inspectorを起動する例。
Gruntfile.js
  grunt.initConfig({
    nodemon: {
      dev: {
        script: './bin/www',
      },
      options: {
        nodeArgs: ['--debug']
      }
    },
    concurrent: {
      target: {
        tasks: ['nodemon:dev', 'node-inspector'],
        options: {
          logConcurrentOutput: true
        }
      }
    },
    "node-inspector": {
      dev: {
      }
    }
  });
  // plugins
  grunt.loadNpmTasks('grunt-nodemon');
  grunt.loadNpmTasks('grunt-concurrent');
  grunt.loadNpmTasks('grunt-node-inspector');
  // tasks
  grunt.registerTask('serve', ['concurrent:target']);
expressもnode-inspectorも起動しっぱなしになるので、平行でタスクを走らせる grunt-concurrentを使っています。
