我一直在努力调试我的应用程序中的服务器端代码。对于客户端来说,Chrome或Firefox浏览器中的调试器非常好用,但对于服务器来说则更加复杂。
我一直在努力调试我的应用程序中的服务器端代码。对于客户端来说,Chrome或Firefox浏览器中的调试器非常好用,但对于服务器来说则更加复杂。
以下是我如何在Meteor 0.5.6上进行调试的方法:
无需再修改run.js文件
安装node-inspector https://github.com/dannycoates/node-inspector
创建环境变量 export NODE_OPTIONS='--debug'
运行meteor
或mrt
命令。应该会提示您类似于“调试程序正在端口5858上侦听”的消息。
一旦调试器开始侦听,您就可以启动node-inspector,并将浏览器指向Visit http://127.0.0.1:8080/debug?port=5858
我非常享受这个过程 :-)
对于Meteor 1.2.x及更高版本,一切都已经打包好了。只需运行meteor debug
并连接到提供的URL即可。
Meteor cannot currently handle quoted NODE_OPTIONS
。我不确定需要做什么!! - SharpCodernpm install -g node-inspector
然后使用特定变量运行Meteor应用程序
env NODE_OPTIONS="--debug" meteor
在新的终端标签页中运行以下命令来打开node-inspector:
node-inspector
复制并粘贴来自Chrome上node-inspector的url,您将找到所有服务器端代码以设置断点进行调试。 重要提示:在(无域)文件夹中设置项目文件的断点。
我同时使用Node-inspector和Loggly来调试我的Meteor服务器。
Node-inspector非常棒,但是如果有测试人员告诉我有问题,或者在生产环境中出现问题,它无法告诉我他们具体做了什么,或者他们所处的硬件/网络条件。然而,日志记录可以告诉你导致问题的步骤和条件,从而提供更好的信息进行调试。
meteor debug
就解决了问题。 - AlikElzin-kilaka