【问题标题】:pm 2 starts my bot, but the bot isn't online on discord下午 2 点启动了我的机器人,但机器人在 discord 上不在线
【发布时间】:2020-01-19 01:11:46
【问题描述】:

我将我的 discord.js 机器人托管在我的树莓派 4 上。一切正常,但显然在断电时我希望我的机器人能够自行重新启动。

我尝试了什么:

pm2 start index.js --watch --ignore-watch="node_modules" --name MeguBot
pm2 startup
sudo env PATH=$PATH:/usr/bin /usr/lib/node_modules/pm2/bin/pm2 startup systemd -u pi --hp /home/pi
pm2 save

现在,当我重新启动我的 rpi 并执行 pm2 list 命令时,我得到了这个:this(它显示我的机器人已启动并正在运行)

但机器人在 Discord 上仍处于离线状态

编辑:

这是我在错误日志中得到的:

Error: getaddrinfo EAI_AGAIN discordapp.com discordapp.com:443
    at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:56:26)

【问题讨论】:

  • 你确定bot可以在不通过PM2运行时从你的pi连接(例如node index.js)?
  • 我刚刚尝试过,它也可以通过执行node index.js 命令在 pm2 之外运行
  • 您是否检查过 PM2 的日志中是否发生了任何错误?
  • 据我了解,这基本上只是在连接失败后尝试重新连接并且无法重新连接,对吧?
  • 你不小心在链接上传中暴露了你的令牌,尽快撤销它。机器人是否能够使用 PM2 从您的 PI 进行连接?

标签: javascript linux discord.js raspbian


【解决方案1】:

PM2 不错,但 Forever 或 Nodemon 更好。在这里查看它们https://www.npmjs.com/package/nodemonhttps://www.npmjs.com/package/forever

【讨论】:

  • Forever 是 PM2 的一个很好的替代品,我不同意 Nodemon 应该用于生产环境。
  • 谢谢,我会试试的,你会推荐我哪些?
  • 永远用于生产,nodemon 用于开发
  • 好的,所以我尝试永远使用,我想在 rpi 启动时执行机器人的 js 文件。在sudo crontab -e 我添加了@reboot /usr/local/bin/forever start /home/pi/.dcjsbots/megubot/index.js 但它不会启动..,
  • 查看您的系统日志以获取有关故障的更多信息。
猜你喜欢
  • 1970-01-01
  • 2021-11-08
  • 2018-07-22
  • 2020-10-27
  • 2021-12-12
  • 1970-01-01
  • 2021-04-01
  • 2020-12-27
  • 2021-05-07
相关资源
最近更新 更多