【发布时间】: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 * * * * 导致这些执行时间:
- 结果: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 函数需要在 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