问题标签 [ncron]

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 回答
637 浏览

c# - 带有参数的 Azure 函数上的两个计时器触发器

我们有两个计时器触发 Azure 函数 - 触发器 A 和触发器 B。如果触发器 A 被定义为“第一个”,它将运行而触发器 B 不运行。同样,如果先定义触发器 B,它将运行而触发器 A 不运行。

这导致两个问题:

  1. Azure 函数可以有两个计时器触发器吗?我在文档中找不到任何东西。我发现的最接近的事情是一个 SO 答案,暗示这是不可能的。
  2. 鉴于官方文档中以逗号分隔的 NCRONTAB 表达式由于参数不同而没有在此处剪切,有什么好的解决方案?

我们正处于试图将计时器触发器更改为 API 触发器并在计时器上使用不同参数调用端点的冗余函数应用程序的地步。

0 投票
1 回答
77 浏览

azure - NCron 表达式“0 0/5 19-7 * * Mon,Tue,Wed”无法解析天蓝色函数

我的 Cron 表达式是:0 0/5 19-7 * * Mon,Tue,Wed

这传入了以下 cron 表达式帮助网站 https://ncrontab.swimburger.net/ https://crontab.guru

但是,在打印下一个 50 个计划时,这将失败并出现以下错误:

[2021-06-07T17:11:38.690Z] 执行“Function1”(失败,Id=1005492c-88bd-4cc6-ada5-355cdabdf156,持续时间=488ms)[2021-06-07T17:11:38.692Z] System.Private .CoreLib:执行函数时出现异常:Function1。NCrontab.Signed: '0 0/5 19-7 * * Mon,Tue,Wed' 是一个无效的 crontab 表达式。它必须包含按分钟、小时、天、月和星期几顺序排列的日程表的 5 个组成部分。

以下是打印接下来 50 个计划的 Azure 函数代码:

我在这里想念什么?是否有任何官方 Azure 工具可以帮助创建和验证 CRON 表达式?

0 投票
0 回答
110 浏览

azure - 本地运行的天蓝色函数 - 不使用 UTC 的 cron 计时器

我有一个带有以下 cron 表达式的天蓝色函数计时器:'0,30 * 0-8,21-23 * * *'. 即从 0-8 和 21-23 UTC每 30 秒(或者至少我希望它是 UTC)。

但是现在当我使用本地运行我的函数时func start,我得到以下信息:

请注意,接下来的 X 次出现使用本地时区 (+11:00)。下一个触发器正好在21:00:30+11:00

这是错误的(我认为),如果您看到日志时间戳(以 UTC 表示),您可以看到我们现在处于 0-8 窗口中,不需要等待 21-23 窗口。

注意:我绝对不会覆盖该WEBSITE_TIME_ZONE设置。

我用来在本地运行该函数的命令是:func start

[编辑] 为清楚起见,请参阅我在 Azure-Functions github 页面上打开的问题。