是否可以debugging当前正在运行的生产节点应用程序?

在本地我通过运行node --debug和使用node-inspector工具进行debugging。 节点检查器必须在后台运行,然后我指向我的浏览器(并非所有的浏览器都能正常工作; Chrome会这样),以便http://127.0.0.1:8080/debug?port=5858进行debugging。

问题是我无法在本地运行生产服务器(缺less不属于开发机器的私钥文件),因此即使我愿意在生产机器上进行攻击,也很难debugging某些生产问题。 这仍然可以与节点督察?

是的,您只需从节点检查器的README中执行几个步骤:

  1. 节点检查器必须在正在尝试debugging的节点进程的计算机上运行。 所以,你必须能够在那里安装。
  2. 大概你的生产过程不是以 – debugging标志开始的。 你可以发送一个信号来实现这个: kill -s USR1 <pid> 。 (可以用ps aux | grep node来获得pid。)
  3. 确保端口8080从您的生产机器暴露在您的本地机器上。
  4. 将浏览器指向正常, 你们都成立了

你需要知道的一切。

这也解决了我。 见下文:

如何在Ubuntu 16.04上设置Node.js生产应用程序

如何使用Systemd和Nginx部署Node.js应用程序