问题标签 [agenda]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1526 浏览

node.js - 服务器重新启动后议程作业不运行

我有一个议程作业,当我第一次定义它时,它运行得非常好。我可以在 MongoDB 中看到相应的文档,一切都很好。但是当服务器重新启动或我按“Ctrl+C”并终止进程时,重新运行我的应用程序后,该作业不会运行。

在git上也有很多关于这个问题的讨论。

我努力了:

1- 优雅地处理 SIGTERM

2- 运行 MongoDB 更新查询,并在启动应用程序时将 lockedAt、lastModifiedBy、lastRunAt 设置为 null。

两者都不为我工作。我可以在 MongoDB 中看到该作业未处于锁定状态,所以我很困惑为什么如果重新启动应用程序它不运行?

0 投票
1 回答
1654 浏览

node.js - Agenda js:如果我的服务器在作业的预定时间停机会发生什么?

假设我有一个使用@agenda/agenda安排的工作,就像这样

我想知道如果我的服务器/节点脚本操作系统关闭会发生什么?

  • 议程是否能够在下次服务器重新启动时重新启动过去的工作?
  • 如果没有,我怎样才能达到同样的效果?
0 投票
1 回答
535 浏览

jestjs - 如何用 jest 测试议程作业?

我想测试我正在使用议程运行的作业。我编写了以下测试,但后来我意识到expect()...在确定测试通过或失败之前,所有函数都没有被调用。我console.log()在所有expect()函数中都放了一些,它们确实在确定测试结果之前不会被调用。我尝试expect.assertions(6);在测试顶部添加,但它并没有让测试等待更长时间,它只是失败说它没有找到所有 6 个。

如何让 jest 等待整个测试完成?

这是我要测试的代码:

rules.js

这是我的测试:

rules.test.js

0 投票
1 回答
564 浏览

node.js - 议程作业:now() 使作业运行多次

我正在安排一个议程工作,如下所示:

但是上面的命令使我的工作几乎每 1 分钟运行一次。但是当我把它改成

以上按预期工作,即它每 5 分钟运行一次作业。

但我不想要一份经常性的工作。而是运行一次。

0 投票
0 回答
116 浏览

emacs - 有没有办法在调用 org-agenda-columns 时设置缓冲区的宽度?

如果列议程视图跨越整个缓冲区宽度,那就太好了。有任何想法吗?

0 投票
2 回答
855 浏览

javascript - 使用议程时出现 UnhandledPromiseRejectionWarning

我通过议程包编写了一些代码,当我运行我的项目时,我得到了 UnhandledPromiseRejectionWarning。

我的代码在这里:

警告是这样的:

它的示例代码是这样的:

我像示例代码一样编写代码,但我不知道为什么会收到警告!

0 投票
1 回答
1230 浏览

javascript - 使用 async/await 在议程中运行作业

我有一些分开的模块和模型。现在我想添加agenda以调度模式运行的作业。当我编码sync一切正常但我想用asyncand处理它时await。这是我的代码:

从“模型”导入{用户};

在我的anenda索引文件中:

在我的一些路线中(仅用于测试)我这样称呼:

这里的问题是我user记录它时的对象

我认为输出顺序错误:

我怎样才能制定议程以按预期工作的确切顺序 async/await工作?

0 投票
2 回答
1141 浏览

node.js - nodeJS议程在特定日期开始工作

有什么方法可以使用agenda图书馆在特定日期开始工作吗?

这就是我创造工作的方式:

但此时工作在创建后立即开始,我想以某种方式指定它应该开始的日期,比如明天。

0 投票
2 回答
517 浏览

cron - 是否有一个 Cron 表达式可以在跨年边界每 5 个月后安排任务?

我有一个议程工作,我想每五个月安排一次。假设我在 1 月 20 日开始这项工作,那么现在的时间表应该是 2019 年 1 月 20 日、2019 年 6 月 20 日、2019 年 11 月 20 日、2020 年 4 月 20 日等等。

Agenda 使用 cron 进行调度。

问题00 00 20 1,6,11 * 在于它永远不会在 4 月运行,它将
在 2019-06-01 00:00:00
然后在 2019-11-01 00:00:00
然后在 2020-01-01 00:00:00运行
然后在 2020-06-01 00:00:00
然后在 2020-11-01 00:00:00。

我使用的另一个表达式是00 00 20 */5 *. 下一个运行时间是
2019-06-20 00:00:00
,然后是 2019-11-20 00:00:00
,然后是 2020-01-20 00:00:00,
然后是 2020-06-20 00:00 :00
然后在 2020-11-20 00:00:00

但它们不是我希望它运行的月份,即每隔五个月运行一次。

0 投票
2 回答
3896 浏览

node.js - 在 nodejs 中创建重复事件以更新或插入 MySQL 表

我有一个 MySQL 表任务。在任务中,我们可以创建一个普通任务或重复任务,它会自动在 MySQL任务表中创建一个新任务,并向用户发送一个任务已创建的电子邮件通知。经过大量研究,我发现您可以通过四种方法做到这一点

  1. MySQL 事件
  2. Kue, Bull, Agenda(node.js 调度库)
  3. 使用 cron 作业监控每天的任务

重复任务将在每周每天每月每年重复。我们必须随时选择删除重复事件。什么是一个好的和干净的解决方案?