我有一个 Azure Durable Function (v3),计划在周六晚上 20:30(晚上 8:30)运行。星期天早上我看到它没有运行,所以我安排它在星期一的 20:30 运行。我通过使用新的 TimerTrigger 设置部署新的 zip 包来做到这一点。该应用程序在周一运行,但它并没有完成我希望它完成的所有工作。周三 13:00 左右,我添加了一些日志记录并安排应用程序在每天 20:30 运行:
public async Task Start([TimerTrigger("0 30 20 * * *")] TimerInfo timerInfo,
[DurableClient] IDurableOrchestrationClient starter,
ILogger log)
{
// ...
}
我今天(星期四早上)检查了该功能并没有触发。我在 Azure 存储上打开了日志,我只看到了周一的运行情况:
2021-04-19T20:30:00.058 [Information] Executing 'KreptdIntegration_Start' (Reason='Timer fired at 2021-04-19T20:30:00.0215809+00:00', Id=8c40e15b-a740-4956-a6e6-b90b8fe95f3a)
2021-04-19T20:30:00.338 [Information] Started orchestration with ID = 'kreptdintegrationsingleinstance'.
2021-04-19T20:30:00.364 [Information] Executed 'KreptdIntegration_Start' (Succeeded, Id=8c40e15b-a740-4956-a6e6-b90b8fe95f3a, Duration=331ms)
在 Azure 门户中函数的监控部分,我还只能看到有关周一运行的信息:
为什么函数没有触发?是否有可能我安排的功能太晚了?(我安排它在 13:00 左右运行,在当天 20:30 运行。如果它是用 C# 编写并部署为包的函数,是否可以从 Azure 门户手动触发该函数?