Forever.js 没有重启我的 Node.js / Express 应用

Forever.js doesn't restart my Node.js / Express app

我正在使用 forever.js 来确保我的 Node.js / Express 应用 运行 没有中断。但是,有时它会崩溃并且永远不会重新启动它。

我正在使用

forever start app.js

启动应用程序

它开始正常,工作,然后在某些时候崩溃,当我这样做时

forever list

它没有列出任何内容,所以它根本不会重新启动...

我也试过运行用日志文件来处理它,使用

forever start -l foreverlog.txt app.js

并且日志文件没有问题,但它没有显示有关进程结束的任何信息 - 例如崩溃或错误报告,如果我直接从我的控制台 运行 app.js,我通常会有。

你知道我如何永远重启应用程序或至少将错误记录到日志中吗?

谢谢!

尝试通过使用

搜索进程来手动终止进程
ps axl | grep node

然后

kill 24597

将 24597 替换为您的进程号。然后永远重启。

http://blog.nodejitsu.com/keep-a-nodejs-server-up-with-forever/

永远分割日志

-l  LOGFILE      Logs the forever output to LOGFILE
-o  OUTFILE      Logs stdout from child script to OUTFILE
-e  ERRFILE      Logs stderr from child script to ERRFILE

即使您没有指定 -e 文件,它也应该在某处。 windows.

上的用户/{UserName}/.forever

您应该检查错误文件。也许这会揭示进程失败的原因。

您需要使用 spinSleepTime:

forever --minUptime 1000 --spinSleepTime 1000 -w -l *.log -e *.log --port 1234 app.js

--未设置最小正常运行时间。默认为:1000 毫秒

--spinSleepTime 未设置。如果脚本未保持至少 1000 毫秒,您的脚本将退出