0

我每小时运行一个 cron 作业,但它没有按预期工作。它应该每小时运行一次,例如下午 1 点、下午 2 点、下午 3 点等。
但它迟到了 30 分钟。下午 1 点 30 分、下午 2 点 30 分等等……

node-cron在 Node.js 中使用,服务器是 Digital Ocean Ubuntu。

这是代码

var moment = require('moment');
var cron = require('node-cron');
cron.schedule('0 * * * *', function () {
    console.log('cron job started at ' + moment().utcOffset(330).format());
});

输出 -它的运行延迟 30 分钟
cron 作业开始于 2018-02-10T17:30:00+05:30
cron 作业开始于 2018-02-10T18:30:00+05:30
cron 作业开始于 2018-02- 10T19:30:00+05:30
cron 作业开始于 2018-02-10T20:30:00+05:30

我希望输出为- 每小时开始

cron 作业于 2018-02-10T17:00:00+05:30
开始 cron 作业于 2018-02-10T18:00:00+05:30
开始 cron 作业于 2018-02-10T19:00:00+05 开始: 30
cron 作业开始于 2018-02-10T20:00:00+05:30

4

1 回答 1

1

您正在moment()通过调用添加 3.5h 来更改返回的时区.utcOffset(330)
删除对的调用utcOffset(),它应该显示正确的时间。

于 2018-02-12T01:21:33.433 回答