debugging - Meteor:服务器端调试

标签 debugging meteor server-side

有人知道调试服务器端代码的好方法吗? 我尝试启用 Node.js 调试,然后使用 node-inspector,但它没有显示我的任何代码。

我最终使用了console.log,但这非常低效。

更新:我发现以下过程适用于我的 Linux 计算机:

  1. 当您运行 Meteor 时,它将生成两个进程

    进程1:/usr/lib/meteor/bin/node/usr/lib/meteor/app/meteor/meteor.js

    process2:/usr/lib/meteor/bin/node/home/paul/codes/bbtest_code/bbtest02/.meteor/local/build/main.js --keepalive

  2. 您需要在进程2上发送kill -s USR1

  3. 运行node-inspector,您可以看到您的服务器代码

在我的第一次尝试中,我将/usr/lib/meteor/bin/meteor 中的meteor启动脚本的最后一行修改为

exec "$DEV_BUNDLE/bin/node" $NODE_DEBUG "$METEOR" "$@"

并在命令提示符下运行NODE_DEBUG=--debug Meteor。这只会在 process1 上放置 --debug 标志,所以我只能在节点检查器上看到 meteor 文件,而找不到我的代码。

有人可以在 Windows 和 Mac 计算机上检查这个吗?

最佳答案

在 Meteor 0.5.4 中,这变得更加容易:

首先从终端运行以下命令:

npm install -g node-inspector
node-inspector &
export NODE_OPTIONS='--debug-brk'
meteor

然后在浏览器中打开http://localhost:8080以查看节点检查器控制台。

更新

从 Meteor 1.0 开始,您只需键入

meteor debug

这本质上是上述命令的快捷方式,然后如上所述在浏览器中启动节点检查器。

更新

在 Meteor 1.0.2 中添加了控制台或 shell。在服务器上输出变量和运行命令可能会派上用场:

meteor shell

关于debugging - Meteor:服务器端调试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11034941/

相关文章:

meteor - 了解来自 Meteor.js 的错误消息 : Error: EACCES, 权限被拒绝

node.js - Meteor Mongo 插入失败——访问被拒绝

java - 如何使服务器端域模型可用于客户端 Web 浏览器?

服务器端 JavaScript 问题

c# - 在运行时搜索对象中的值 [QuickWatch 增强]

c - 当 switch 语句中有两个连续的 break 时会发生什么?

debugging - Allegro CL,逐步调试功能

android - 在 Eclipse 中调试 Android NDK C/C++ 代码 - 断点未命中

meteor - 如何在每种情况下(事件、助手、 Hook )访问数据上下文和模板实例?

javascript - 为什么从同一设备查看 3 次后重定向页面不起作用?