在Azure功能中动态设置计划

问题描述 投票:4回答:2

我的Azure函数有以下function.json,其日程安排设置为每天运行9.30。我想要的是动态设置这个json的schedule属性。当使用我的应用程序的客户端输入日期时,就会出现这种情况,日期调度程序应该运行。

   {
  "bindings": [
    {
      "name": "myTimer",
      "type": "timerTrigger",
      "direction": "in",
      "schedule": "0 30 9 * * *" //Want to set dynamically
    }
  ],
  "disabled": false
}

这可能吗?

(另请注意,由于预算原因,我不想使用Azure Scheduler)

json azure azure-functions
2个回答
2
投票
  1. 使用Kudu API更改function.json https://github.com/projectkudu/kudu/wiki/REST-API PUT https:// {functionAppName} .scm.azurewebsites.net / api / vfs / {pathToFunction.json},Headers:If-Match:“*”,Body:new function.json content
  2. 然后发送请求以应用更改 POST https:// {functionAppName} .scm.azurewebsites.net / api / functions / synctriggers

或者您可以将Queue Trigger与“initialVisibilityDelay”消息一起使用。在这种情况下,您需要编写自己的代码来实现调度程序。


3
投票

您可以修改function.json以从应用程序设置中获取cron表达式。

“schedule”:“%TriggerSchedule%”

在appsettings中定义TriggerSchedule。您可以动态修改appsettings,并且函数触发器将与其对齐。

© www.soinside.com 2019 - 2024. All rights reserved.