【问题标题】:How to debug server side code in a Meteor app如何在 Meteor 应用程序中调试服务器端代码
【发布时间】:2013-02-01 07:23:39
【问题描述】:

我一直在努力调试我的应用程序中的服务器端代码。对于客户端来说,chrome 或 firefox 中的浏览器调试器工作起来就像一个魅力,但对于服务器来说它更复杂

【问题讨论】:

  • 您也可以使用WebStorm IDE调试服务器端。
  • meteor debug 在 Meteor 1.1.0.2 上成功了。

标签: debugging meteor remote-debugging


【解决方案1】:

这就是我为流星 0.5.6 管理它的方式

不再需要修改 run.js

安装节点检查器https://github.com/dannycoates/node-inspector

创建环境变量export NODE_OPTIONS='--debug'

运行meteormrt 命令。它应该告诉你调试器监听端口 5858 之类的信息

调试器开始监听后,您可以启动节点检查器并将浏览器指向Visit http://127.0.0.1:8080/debug?port=5858

我玩得很开心:-)

对于流星 1.2.x 及更高版本,所有内容都已打包。只需运行 meteor debug 并连接到提供的 url

【讨论】:

  • 最新版本的 Meteor (0.7.0.1) 在最新版本的节点检查器中不再在断点处停止。原因仍然未知(github.com/meteor/meteor/issues/1411),但可以将调试器语句放入代码中:-(
  • 顺便说一句,如果您使用 IntelliJ,您可以执行 Gorb 博士建议的步骤,但只需为“Node.js 远程调试”添加运行配置;将服务器设置为 127.0.0.1(如果您在本地调试)并将端口设置为流星命令报告的端口,通常为 5858。这适用于 0.8 和 IntelliJ 13。
  • 在 Linux Mint 上,在 Chrome 中,我无法使用 IP 地址为 0.0.0.0 的 URL。 Chrome 一直在进行 Google 搜索。我建议你使用 node-inspector 给你的链接,通常是127.0.0.1:8080/debug?port=5858
  • 我收到错误`Meteor 目前无法处理引用的 NODE_OPTIONS`。我不确定需要做什么!
  • 如果您使用的是流星 1.2.x,只需运行 meteor debug 即可启动您的应用程序
【解决方案2】:

this videoSlava Kim 中解释了如何在服务器端调试 Meteor 应用程序。 首先你必须安装 node-inspector

npm install -g node-inspector

然后使用特定变量运行 Meteor 应用程序

env NODE_OPTIONS="--debug" meteor

在新的终端选项卡中通过运行命令打开节点检查器

node-inspector

从 Chrome 的 node-inspector 复制并粘贴 url,您将找到所有服务器端代码来设置断点以进行调试。 重要提示:在(无域)文件夹中的项目文件上设置断点

【讨论】:

    【解决方案3】:

    我使用 Node-inspector 和 Loggly 来调试我的 Meteor 服务器。

    Node-inspector 非常棒,但如果我有测试人员告诉我生产中发生的问题或问题,它并没有告诉我他们到底做了什么或他们所处的硬件/网络条件。但是,日志记录可以告诉您导致问题的步骤和条件,从而使您可以使用更好的信息进行调试。

    【讨论】:

      【解决方案4】:

      从 Meteor 1.1.0.2 开始,meteor debug 可以在 Meteor 1.1.0.2 上使用。

      查看更多信息here

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-03-20
        • 2012-06-17
        • 1970-01-01
        • 2012-09-09
        • 2015-04-14
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多