从每个 00:x0 之前 1 秒开始,每 10 分钟运行一次 Azure Function

hcd*_*ocs 1 javascript cron azure-functions

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

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

module.exports = async function (context, myTimer) {
    var timeStamp = new Date().toISOString();
Run Code Online (Sandbox Code Playgroud)

我不相信 Azure 函数中有一个设置可以设置开始日期/时间。cron 调度程序似乎是唯一的选择。

根据 Azure Functions 文档:

计划表达式是一个 CRON 表达式,包含 6 个字段:

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

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

文档提供的示例:

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

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

59 */10 * * * *结果是这些执行时间:

  • 结果:11:40:59 | 期望时间: 11:39:59
  • 结果:11:30:59 | 期望时间: 11:29:59
  • 结果:11:20:59 | 期望时间: 11:19:59
  • 结果:11:10:59 | 期望时间: 11:09:59

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

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

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

Mar*_*kXA 5

虽然有点拗口,但你想要的是59 9,19,29,39,49,59 * * * *