【问题标题】:Run Azure Function every 10 minutes starting at 1 second before each 00:x0从每个 00:x0 之前的 1 秒开始,每 10 分钟运行一次 Azure Function
【发布时间】:2018-12-25 02:45:53
【问题描述】:

Azure 函数必须从 00:59:59(小时、分钟、秒)开始无限期地每 10 分钟运行一次。我使用的 cron 计划不成功。

我正在使用基于计时器的 Javascript Azure 函数,例如,

module.exports = async function (context, myTimer) {
    var timeStamp = new Date().toISOString();

我认为 Azure 函数中没有设置开始日期/时间的设置。 cron 调度程序似乎是唯一的选择。

根据 Azure Functions 文档:

调度表达式是一个包含 6 个字段的 CRON 表达式:

{second} {minute} {hour} {day} {month} {day of the week}

请注意,您在网上找到的许多 cron 表达式都省略了 {second} 字段,因此如果您从其中一个中复制,则必须针对额外字段进行调整。

文档提供的示例:

每 5 分钟触发一次:0 */5 * * * *

每天上午 9:30 触发:0 30 9 * * *

59 */10 * * * * 导致这些执行时间:

  • 结果:1​​1:40:59 |所需时间:11:39:59
  • 结果:1​​1:30:59 |所需时间:11:29:59
  • 结果:1​​1:20:59 |所需时间:11:19:59
  • 结果:1​​1:10:59 |所需时间:11:09:59

不支持59 */10-1 * * * *

Azure 函数需要在 00:59:59 开始其初始运行的原因是该函数会将前 10 分钟内发生的事件时间戳与 10 分钟 UTC 时间间隔进行比较。如果分钟级别的任何事件时间戳与分钟级别间隔内的 UTC 时间戳匹配(例如,2018-12-21T00:35:18.894Z 处的事件的 2018-12-21Txx:3x:xx.xxxZ 匹配此模式 2018-12-21Txx:3x:xx.xxxZ 的任何 UTC 时间戳),则执行操作。 )

我被困住了。任何帮助表示赞赏。谢谢。

【问题讨论】:

    标签: javascript cron azure-functions


    【解决方案1】:

    有点拗口,不过你要的是59 9,19,29,39,49,59 * * * *

    【讨论】:

    • 感谢您的帮助,MarkXA!
    猜你喜欢
    • 1970-01-01
    • 2018-08-08
    • 2018-09-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-18
    • 2023-03-16
    • 2017-01-05
    相关资源
    最近更新 更多