Node.js debugging

In my current role at Skype, we do lots of prototyping to try out different ideas for various problems. We’ve been using Node.js heavily as it allows us to quickly iterate on different server architectures. Even though I’m not a big fan of JavaScript as a language (Why?), I do like Node.js as a prototyping platform. Once you get used to the callback mindset that comes with Node.js, you have pretty much everything you need to write some serious server side code.

In this post, I want to outline how to debug Node.js applications. I tried a few different debug tools for Node.js but I found node-inspector to be a decent tool to debug Node.js applications.

First, install node-inspector:

npm install -g node-inspector

Start your Node.js application with –debug-brk which tells the debugger to pause your script on the first line:

node --debug-brk yourNodeApp.js

Start node-inspector

node-inspector &

Go to http://127.0.0.1:8080?debug=port=5858. Last time I tried, IE did not work, so try with a non-IE browser.

At this point, you should see your Node.js script stopped on the first line. Click on scripts tab to see all your scripts and set breakpoints where ever you want and then step through your code like you normally would.

Advertisements

One thought on “Node.js debugging

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s