Esistono diverse soluzioni per il debugging delle applicazioni basate sul JavaScript environment NodeJS, una di queste, il NodeJS Debugger, viene messa a disposizione come componente integrata ed è accessibile tramite interfaccia testuale. Chi invece desidera utilizzare uno strumento maggiormente improntato all'interazione visuale potrebbe optare per il Chrome Debugger che consente di operare attraverso l'interfaccia utente dei Chrome DevTools.
Il Chrome Debugger è abbastanza completo dal punto di vista delle funzionalità, consente di eseguire porzioni di codice a partire da qualsiasi pagina, supporta il debugging sulla base di breakpoint, permette di effettuare debug su risorse remote, può essere utilizzato anche da console, consente l'interazione da linea di comando, permette di debuggare codice offuscato, semplifica l'acceso delle variabili nel sorgente e, per quanto riguarda NodeJS, è disponibile grazie ad un porting.
Il protocollo di Chrome per il debug è stato infatti portato in un modulo per NodeJS divenendo utilizzabile anche per le applicazioni basate su quest'ultimo. L'utilizzo del Chrome Debugger è però condizionato da un requisito: l'installazione del node-inspector, cioè dell'interfaccia per il debugging di NodeJS che utilizza i Blink Developer Tools (ex WebKit Web Inspector) dove Blink e il rendering engine di Chromium e Chrome.
Per installare node-inspector basta ricorrere a npm, il package manager di Node:
npm install -g node-inspector
Fatto questo basterà avviare il debugging su un qualsiasi file JavaScript, nel caso non fosse abilitata di default si consiglia di utilizzare anche l'opzione --debug-brk che permette di mettere in pausa lo script alla prima riga:
node-debug nome-file.js --debug-brk
L'istruzione lancerà i Chrome Developer tools che potranno essere utilizzati per il debugging dell'applicazione NodeJS che si desidera analizzare.
Per approfondire: node-inspector