node.js - 如何使用cron重启PM2?

标签 node.js pm2

我需要找到一个 cron 命令,该命令可以使用进程重新启动 pm2,但前提是该进程尚未运行

pm2 start app.js 会启动应用程序,即使它已经在运行。

我可以使用的另一个命令是什么,它只会重新启动 app.js(如果它尚未运行)以及如何在 crontab 中编写它?

最佳答案

pm2 中没有默认方法来实现此目的,您可以为此编写 shell 脚本。

#!/bin/bash

pm2 describe appname > /dev/null 
RUNNING=$?  

if [ "${RUNNING}" -ne 0 ]; then
    pm2 start ./yourscriptpath
else
    pm2 restart appname
fi;

将此 shell 脚本保存为 pm2_starter.sh,然后

crontab -e

并添加以下内容

 */30 * * * * ./home/ridham/stackoverflow/pm2_starter.sh

这将每 30 分钟运行一次。

如果应用程序在 pm2 下运行,脚本将重新启动,否则它将启动它。您足够聪明,可以根据您的用例进行编辑

关于node.js - 如何使用cron重启PM2?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49026393/

相关文章:

javascript - node.js csurf 无效的 csrf token

javascript - 未找到 Puppeteer 'Page.getFrameTree' undefined

pm2 - 如何使用 PM2 进行任务作业?

node.js - 如何配置 WebStorm 调试器以与我的 Express 应用程序一起使用

node.js - 从 https.request 获取正文

node.js - 在 ReactJS 中使用命令行参数

node.js - Node.js弹性客户端getMapping不要给mapp

node.js - 如何在某个 Node 版本上运行 pm2?

node.js - 你如何使用非 root 用户启动 pm2?

node.js - Chef 设置 : trying to start node app with PM2