注意:即使它似乎重复,我的问题也有所不同,我请求您阅读完整的说明,然后通过阅读问题标题匆忙标记问题。
我于2017年5月24日在官方“Azure function is not triggering on scheduled time”git存储库中打开了“azure-webjobs-sdk-script”问题 - 但尚无回复。所以我在这里重新问这个。
我在消费计划中使用azure函数,并通过在function.json中设置以下cron表达式将其安排在每上午4点执行一次:
{
"bindings": [
{
"name": "myTimer",
"type": "timerTrigger",
"direction": "in",
"schedule": "0 0 4 * * *"
}
],
"disabled": false
}
只有当我登录门户网站或点击功能刀片时,Azure功能才能按时执行。当我从门户网站注销时它不会调用(建议系统监听器或功能转到在一段时间后睡觉。)
他们在消费计划中起作用的official documentation状态不需要任何其他设置(如Always on)来保持函数处于活动状态,Azure strong函数主机的实例将根据数量动态添加和删除传入的事件。。因此,根据文档,我不需要配置其他设置来执行消费计划中的功能。
我尝试了什么?
关于SO的“Timer triggered azure function not getting triggered”问题,我重新检查并确保了我的计划(消费计划)和时区。 (我希望它在utc中运行,因此不需要显式设置)
从“#1445: Azure function timer trigger not firing”git问题,我检查了它是否只是没有出现的日志。但我当然确定,它不是日志,但实际功能不会被触发,除非我打开门户或手动触发它。
我尝试检查这种行为是否存在,如果我将计划更改为更接近的递归调用 - 我安排的功能每2小时执行一次,即使我退出或执行此计划也完美有效没有手动唤醒功能。这意味着,当时间表设置为在更大的时间间隔(在我的情况下每个天)上运行时会出现一些问题
答案 0 :(得分:1)
如#1534中所述,在新功能应用程序中完全删除和重新部署该功能并未重现该问题。因此删除功能和/或功能应用程序并重新部署应该可以使事情有效。与此同时,Azure团队已宣布添加internal logging,这将有助于未来的诊断。