关闭控制台时,Discord bot掉线

时间:2019-04-21 11:57:33

标签: heroku

我将机器人托管在Heroku上,并设置了所有配置(工作人员,令牌...)
当我尝试打开它时,我不得不使用控制台,但是,在键入node index命令后关闭它时,该机器人会脱机。

应用日志:

2019-04-21T11:52:21.580110+00:00 heroku[run.9063]: State changed from starting to up
2019-04-21T11:52:21.423708+00:00 heroku[run.9063]: Awaiting client
2019-04-21T11:52:21.721889+00:00 heroku[run.9063]: Starting process with command `node index`
2019-04-21T11:52:24.425348+00:00 heroku[run.9063]: Client connection closed. Sending SIGHUP to all processes
2019-04-21T11:52:24.962968+00:00 heroku[run.9063]: State changed from up to complete
2019-04-21T11:52:24.944749+00:00 heroku[run.9063]: Process exited with status 129

1 个答案:

答案 0 :(得分:0)

该机器人处于脱机状态,因为如果从控制台启动该机器人,则该进程将“绑定”到该窗口:关闭该窗口也将关闭该进程。

为避免这些问题,您可以尝试使dyno启动机器人:

  • 进入Procfile文件,然后将用于启动漫游器的命令(nodenpm都添加到worker中。
    如果您不知道Procifile是,请查看this article
    完成后,它应该看起来像这样:
worker: node index
  • Procfile提交到您的仓库中并将其推送到Heroku:您应该在应用程序的“资源”标签中看到您的dyno类型。请确保您刚刚添加的dyno类型是唯一的活动类型。
    Why do I need to use the worker dyno?

从现在开始,每次部署您的应用程序时,一旦加载了dyno,Heroku就会运行您输入的命令。如果要查看应用程序的日志,可以使用“更多”菜单>查看日志,或者,如果计算机上安装了Heroku CLI,则可以使用以下命令:

heroku logs -a your-app-name-here --tail