如何远程debuggingheroku上的node.js应用程序?

我目前正在构build一个node.js聊天机器人,然后在heroku上部署。 该应用程序使用webhooks必须在服务器可以到达的公共URL。 因此,在我的机器上本地运行服务器将不起作用。 有没有一种方法可以远程debugging我的应用程序? 有小费吗?

我会考虑使用工具将公共URL连接到本地运行的应用程序实例。

选项1:ngrok

一个容易的将是ngrok

选项2:ssh反向隧道

如果您可以访问任何具有ssh和admin权限的面向Internet的服务器来启用GatewayPorts yes sshdconfiguration,则可以使用ssh remote tunneling来执行此操作。 例如:

 ssh -n -R 8080:localhost:3000 myserver.example.com 

将允许webhooks发送到http://myserver.example.com:8080隧道到您的本地应用程序侦听端口3000。

有关ssh隧道的更多细节可以在这里find

您确实可以使用免费代理服务(如ngrok)在本地计算机上debuggingwebhook 。

如果您想在Heroku上进行debugging,可以使用heroku logs --tail查看您的实时heroku logs --tail或使用存储日志的插件服务。

find更简单的解决scheme

安装LogDNA加载项,然后运行应用程序并查看错误堆栈跟踪。

那么当你看到错误以及发生了哪一行时,很容易发现问题。