node-forever似乎没有像我预期的那样工作

时间:2017-05-18 10:12:53

标签: node.js forever

// test.js

var util = require('util');

setTimeout(function () {
    util.puts('Throwing error now.');
    throw new Error('User generated fault.');
}, 200);

$ forever start -l ./forever.log -o output.log -e err.log -m 5 -a start test.js

我运行上面的命令,然后得到:

warn:    --minUptime not set. Defaulting to: 1000ms
warn:    --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
info:    Forever processing file: test_debug.js

我希望得到5个错误日志,但实际上我只是在err.log中得到一个。似乎test.js只运行了一次而不是5次。

非常感谢〜

1 个答案:

答案 0 :(得分:0)

看看第一个警告:

warn:    --minUptime not set. Defaulting to: 1000ms

如果你的应用程序无法熬夜超过一秒钟(并且你的应用程序会在200毫秒后崩溃),forever.js将不会尝试重新启动它。

您可以通过将setTimeout更改为等待1001毫秒来进行测试,或将minUptime更改为短于200毫秒的内容。