node debug application node.js debugging meteor remote-debugging webstorm

node.js - application - webstorm debug node



¿Cómo puedo depurar mi aplicación Meteor usando el IDE de WebStorm? (6)

¿Alguien puede proporcionar una breve lista de pasos sobre cómo conectar una aplicación Meteor al depurador WebStorm, por favor?



Las otras respuestas están ahora desactualizadas. No agregue una configuración de depuración de Node.js como se describe anteriormente, ni se moleste con spyjs.

Si está utilizando Webstorm 9.0, es tan simple como ir a Ejecutar -> Depurar -> Editar configuraciones ..., haga clic en el signo más, haga clic en "Meteor".

WebStorm también puede pedirle que instale un complemento de navegador, pero eso es solo para la depuración del lado del cliente; simplemente agregue un punto de interrupción en el código del lado del servidor y verá que funciona de manera inmediata.

JetBrains ha actualizado el video al que estaba vinculado en la respuesta anterior de Dan Dascalescu, y te muestra el proceso que acabo de describir.


Para las aplicaciones que usan webpack:webpack , el uso del perfil de depuración Meteor de WebStorm no pareció funcionar.

Mi configuración utiliza webpack:webpack v1.0.12, Meteor v1.3.0 y WebStorm 2016.1, pero es probable que funcione con versiones posteriores (tenga en cuenta que se publicó una solución para este problema en v1.0.12, por lo que es probable que las versiones anteriores no funcionen con este procedimiento).

Esto es lo que hice para que funcione:

  1. Cree un archivo webpack.json en la raíz del proyecto.

    Debe incluir la configuración de devtool , que genera mapas de origen que ayudan en la depuración. El resto puede ser cambiado de acuerdo a su configuración específica.

    { "root": "src", "devServer": { "host": "localhost" }, "devtool": "source-map" }

  2. Crear una configuración de depuración:

    Node.js Remote Debug, puerto 5858 (el puerto es configurable).

  3. Ejecutar meteor debug

    Puede especificar un puerto utilizando --debug-port <port number> .

    Ver la meteor help debug para los detalles completos.

  4. Conecta WebStorm al depurador

    • iniciar el depurador
    • el mensaje de estado debe indicar que está conectado. Los scripts deben estar disponibles en la pestaña Scripts .
    • El servidor debería estar ejecutándose en la consola.
  5. Golpea tus puntos de ruptura y regocíjate.



WebStorm 9 tendrá soporte Meteor. Si bien WS 9 aún no se lanzó (a partir del 7 de octubre de 2014), hay un programa de acceso temprano para WS 9 .

Lea el blog JetBrains WebStorm que describe algunas de las funciones de soporte de Meteor e incluye un breve video.

Soy nuevo en Meteor, WebStorm (y JavaScript para el caso) y he estado usando WS 9 EAP build 138.2406 durante un par de semanas. Puedo iniciar mi proyecto desde el IDE, establecer puntos de interrupción, revisar el código, inspeccionar valores, saltar a definiciones y realizar terminaciones. Es muy útil.


WebStorm es el único IDE con soporte nativo para la depuración del código del servidor Meteor - verifique este video . Incluso en Windows, la depuración es muy simple:

WebStorm 9+

Vaya a Ejecutar -> Depurar -> Editar configuraciones ..., haga clic en el signo más, haga clic en "Meteor". Puede agregar una variable de entorno como ROOT_URL si lo necesita.

Tormenta web mayor de 9

Esta respuesta se mantiene sólo para fines históricos. Debe actualizar WebStorm.

En WebStorms anteriores, solía tener que crear una configuración de depuración Node.js.

  • en el servidor, exporte la variable de entorno NODE_OPTIONS=--debug=47977 . Por ejemplo,

    NODE_OPTIONS=--debug=47977 meteor # Linux/Mac set NODE_OPTIONS=--debug=47977 & meteor` # Windows

  • cree una configuración de ejecución / depuración de WebStorm / PhpStorm utilizando el puerto anterior (47977) y el servidor host. Deja 127.0.0.1 si estás depurando localmente.

  • en WebStorm, Ejecutar -> Depurar <myapp>, o presionar Mayús + F9. Asegúrese de que vea "Conectado a <su host> en el panel Depurar

Ahora puede establecer puntos de interrupción, tener acceso a variables locales, etc.

Para la depuración del cliente, solo use el depurador de Chrome o Firebug.

Solución de problemas

  • Process disconnected unexpectedly : esto sucede cuando el meteorito se reinicia automáticamente debido a la falta de soporte específico para Meteor. Simplemente ejecute -> Depurar <myapp>, o presione Shift + F9 nuevamente.

  • no puede conectarse al servidor; asegúrese de que las reglas del firewall permitan las conexiones entrantes a cualquier puerto que elija para el depurador Node.js (47977 aquí).