2017-05-30 98 views
2

注意:尽管它可能看起来重复,我的问题是不同的,我请求你通过阅读问题的标题匆匆标志着问题下来之前阅读完整的描述。Azure的功能不触发在预定的时间

2017年5月24日,我在官方“azure-webjobs-sdk-script”git存储库上打开了“Azure function is not triggering on scheduled time”问题 - 但目前还没有答复。所以我在这里重新提出这个问题。

我正在使用的消费计划蔚蓝的功能,并计划在其每04:00 UTC通过function.json设置以下cron表达式来执行:

{ 

"bindings": [ 
    { 
     "name": "myTimer", 
     "type": "timerTrigger", 
     "direction": "in", 
     "schedule": "0 0 4 * * *" 
    } 
    ], 
    "disabled": false 
} 

Azure的功能确实得到执行时间只如果我登录门户或点击功能刀片。当我从门户注销时,它不会调用(建议系统监听器或函数在某个时间间隔后进入休眠状态)。

,在消费计划功能不需要任何其它设置(比如总在)保持功能活着他们official documentation状态,在Azure功能主机实例动态添加和基于传入事件的数量去除。。所以按照文档,我不得不配置其他设置来执行消费计划中的功能。

我试过了什么?

  1. 从“Timer triggered azure function not getting triggered”的问题上是这样,我再次检查,确保我的计划(消费计划)和时区。 (我希望它运行在utc中,所以不需要明确的设置)

  2. 从“#1445: Azure function timer trigger not firing”git问题,我检查它是否只是没有出现的日志。但我确定,它不是日志,而是实际功能不会触发,除非我手动启动或启动门户。

  3. 我试图检查是否存在这种行为,如果我将计划更改为更接近的递归调用 - 我计划的函数每隔2小时执行一次,并且即使在注销或未注销手动唤醒功能。这意味着,有当日程安排设置为在更大组区间运行一些问题(在我的情况下,每个一天

+0

它仍然是在GitHub问题中提到的功能应用程序?如果是这样,它似乎有一个'0 0 */2 * * *'的时间表,而不是'0 0 4 * * *'。看起来它每隔两个小时执行一次(如预期的那样),但奇怪的是它在一小时后运行了30分钟。例如08:30,10:30,12:30,...你确定你没有设置时区? –

+0

我已选中并将时区设置为“印度标准时间”,该标准解释了30分钟的部分。就目前来看,一切都按预期工作。 –

+0

@DavidEbbo感谢您的回复。不,它是*不是*在github问题中引用的相同功能。由于我们自己承诺完成项目,我们必须改变它。正如在这里和在github上所提到的那样,函数*会*在*时间间隔(2小时)内执行时间表,但不会在一天中间隔时间内执行(在我的情况下)。我们认为我们提供的id(在github上)足以让您知道该函数的执行时间。无论如何,为了您的参考,我正在创建一个具有相同场景的新功能来帮助您进行调查。 –

回答

1

由于此处在新功能的应用程序完全讨论#1534,删除和重新部署功能没有重现这个问题。因此,删除函数和/或函数应用程序,并重新部署应该使事情工作。同时,Azure团队已经宣布添加internal logging这将有助于未来的诊断。