¿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?
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.
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.
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.
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:
-
Inicie su nodo.aplicación js o script con el interruptor
--inspect
. Por ejemplo:$ node.js --inspect index.js
-
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 /
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