node.js - visual - npm debug
Cómo depurar una aplicación node.js básica(no http) en Windows (7)
Dice: Depurador escuchando en el puerto 5858.
Me pregunté sobre esto, pero como la documentación de Node.js indica que se puede acceder al depurador a través de un protocolo TCP simple y no dice nada sobre HTTP, mi suposición es que no, no estará disponible en _http: // localhost: 5858.
"V8 incluye un extenso depurador al que se puede acceder fuera de proceso a través de un simple protocolo TCP" - http://nodejs.org/api/debugger.html
Sé cómo depurar aplicaciones http usando el inspector de nodos y iisnode. ¿Pero puedo usar el inspector de nodos para depurar una aplicación de nodos no http en Windows?
Lo intenté:
node debug test.js
Dice:
debugger listening on port 5858
Pero abrir http://localhost:5858/
en Chrome no hace nada.
Por cierto: la ejecución del node debug test.js
inicia el depurador de línea de comandos que funciona. Pero no es nada como el inspector de nodos.
Algunos enlaces que pueden ayudarte:
- http://vimeo.com/19465332 (screencast de Ryan mismo).
- https://github.com/joyent/node/wiki/using-eclipse-as-node-applications-debugger
El inspector de nodos puede ser muy útil.
Úsalo desde cualquier navegador que soporte websockets.
Puntos de interrupción, perfilador, codificación en vivo, etc.
http://erickrdch.com/2012/09/debug-a-nodejs-app-with-chrome-dev-tools.html
Muy recientemente, Microsoft lanzó las herramientas node.js para Visual Studio . Tiene la depuración muy cómoda de Visual Studio para node.js.
Para su información, en OSX 10.8, Chrome v26 no parece funcionar, pero Safari 6 usa las mismas instrucciones que arriba y 0.0.0.0:8080 para conectarse.
Hay otro post de Danny Coates en algún lugar que dice que lo haga en el siguiente orden:
- El proceso de su nodo: nodo --debug (o --debug-brk) my_program.js
- Inspector de nodos: inspector de nodos
- El navegador apuntó a 0.0.0.0:8080
Para usar el inspector de nodos, el interruptor derecho es el node --debug
no el node debug
Aquí están los pasos detallados:
- instalar node-inspector globalmente (
npm install -g node-inspector
) - desde una ventana de línea de comandos, ejecute:
node-inspector
- abra Chrome y vaya a
http://localhost:8080/debug?port=5858
. Obtendrá la interfaz de usuario del inspector de nodos pero sin ninguna aplicación en ejecución. - desde otra ventana de línea de comandos, ejecute su aplicación con el interruptor
--debug
como este:node --debug test.js
- actualiza la pestaña de Chrome y listo!
Algunos puntos interesantes:
- Si mata la aplicación y la vuelve a iniciar, simplemente actualice la pestaña del inspector de nodos. Mantendrá todos tus puntos de interrupción.
- Para interrumpir automáticamente la primera línea, inicie su aplicación con
node --debug-brk test.js
Si usted es un noob como yo en Windows y obtiene un ''inspector de nodos no reconocido'' o algo sobre el error de JScript de Windows ... a pesar de la instalación global, agregando a PATH, etc., esto puede ayudar.
Navegue hasta C: / Users / urusername / AppData / Roaming / npm
Luego ejecute node-debug.cmd o node-inspector.cmd
Deberías obtener palabras mágicas como
Node Inspector v0.12.7
Visit http://127.0.0.1:8080/?port=5858 to start debugging.
Debugger listening on port 5858
Increíble. Si conoces una solución mejor, por favor házmelo saber