Azure功能应用程序以编程方式更改计划

时间:2017-09-15 13:17:06

标签: c# azure azure-functions

我有许多基于“定时器触发器”

运行的功能应用程序

目前他们每5分钟就跑一次。

public static async Task Run([TimerTrigger("0 */5 * * * *")]TimerInfo myTimer, TraceWriter log)

我希望能够以编程方式读取当前的计时器设置并更改TimerTrigger值,以便我们可以从管理门户更改它。

这可能吗?

2 个答案:

答案 0 :(得分:6)

使用VS预编译模型时,今天无法做到这一点。但这是有趣的反馈,我建议在https://github.com/Azure/azure-functions/issues上打开一个问题。

更新:实际上可以使用App设置来保存cron。从https://github.com/Azure/azure-webjobs-sdk-script/issues/1934中窃取示例:

public static void Run([TimerTrigger("%CRON_EXPRESSION%")]TimerInfo myTimer, TraceWriter log)

答案 1 :(得分:3)

如果您使用arm模板部署应用程序并将计划放在function.json绑定部分中,而不是作为属性,则在arm模板中,您可以通过重新运行arm模板来更新计划,进行差异更新....或者您可以进入管理门户并在那里编辑绑定。