我正在使用forever.js
来确保我的Node.js / Express应用程序无间断运行。但是,有时它会崩溃并永远不会重新启动它。
我正在使用
forever start app.js
启动应用
它开始很好,有效,然后在某些时候崩溃,当我做
forever list
它没有列出任何内容,因此它根本不会重新启动......
我还尝试使用
运行日志文件 forever start -l foreverlog.txt app.js
并且日志文件很好,但它没有显示有关该过程结束的任何信息 - 例如崩溃或错误报告,如果我直接从我的控制台运行app.js
,我通常会这样做。
您知道如何永久重启应用程序或至少将错误记录到日志中吗?
谢谢!
答案 0 :(得分:3)
永远拆分日志
-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文件,它也应该在某个地方。用户/ {UserName} /。永远在Windows上。
你应该检查ERRFILE。也许这会为这个过程失败的原因带来一些启示。
答案 1 :(得分:1)
您需要使用spinSleepTime:
forever --minUptime 1000 --spinSleepTime 1000 -w -l *.log -e *.log --port 1234 app.js
- 未设置minUptime。默认为:1000毫秒
- 未设置spinSleepTime。如果脚本不能保持至少1000毫秒
,您的脚本将退出答案 2 :(得分:-4)
尝试使用
搜索流程,手动终止流程ps axl | grep node
然后
kill 24597
用您的进程号替换24597。然后再次重启。
http://blog.nodejitsu.com/keep-a-nodejs-server-up-with-forever/