¿Cómo depurar la aplicación node js con puntos de interrupción y todo?


He instalado node-inspector solo para descubrir que no admite puntos de interrupción: | ¿Cuál es el punto en él, teniendo en cuenta que en gran parte el código del nodo es asíncrono y simplemente no puede seguirlo paso a paso?..

Definitivamente me estoy perdiendo un punto aquí...

De todos modos para depurar el código de nodo con puntos de interrupción y todo?

Author: jayarjo, 2012-07-23

4 answers

Yupp, he usado con éxito node-inspector. Si desea puntos de interrupción permanentes , simplemente inserte debugger; en su código. Véase http://nodejs.org/api/debugger.html .

Hacer que el nodo espere hasta que se adjunte un depurador, usando node --debug-brk script.js, también puede ser muy útil.

 17
Author: rdrey,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-07-23 15:25:20

Creo que puedes obtener tus respuestas de este Enlace

Y una cosa más es que también puede enviar cambios dinámicos al depurador V8.

 1
Author: Dexter,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-07-23 12:25:03

Solo para elaborar un poco aquí:

Establezca un depurador donde quiera que estén los puntos de interrupción y luego ejecute su código con el script de depuración de nodos.js / index.js

Cuando el depurador se detenga en su punto de interrupción, necesitará repl para inspeccionar las variables.

 1
Author: bsiddiqui,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-04-29 17:32:06

(Para el nodo 8 y posteriores)

Nodo.js tiene un depurador incorporado. Normalmente puede activar el depurador de dos maneras:

  1. Inicie su nodo.aplicación js o script con el interruptor --inspect. Por ejemplo:

    $ node.js --inspect index.js

  2. Si por alguna razón no puede iniciar su nodo.aplicación js o script con el interruptor --inspect, todavía puede instruir al nodo.proceso js para comenzar a escuchar mensajes de depuración mediante señalización con SIGUSR1 (en Linux y OS X). Para el nodo 8 y más tarde se activará la API Inspector, igual que el interruptor inspect inspect

    $ kill -sigusr1 23485

(Nota: debe reemplazar 23485 con su propio nodo.js process ID)

Con el depurador activado, puede abrir el navegador Google Chrome y escribir en la barra de direcciones chrome://inspect

Entonces debería ver una entrada listada bajo "Destino remoto". Siga adelante y haga clic en "inspeccionar".

Ahora puede establecer puntos de interrupción y comenzar a depurar su código.

Referencia: https://nodejs.org/en/docs/guides/debugging-getting-started /

 0
Author: Yuci,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-06-21 15:23:41