计时器触发器 Azure Function 在没有任何更改的情况下停止工作

Timer trigger Azure Function stopped working without any changes

我有一个同时具有 Timer TriggerService Bus Trigger 函数的 Azure Functions。在该 AF 的 Portal Azure 配置中,我有正确的存储帐户连接字符串 AzureWebJobsStorage。两种资源的 ARM 都没有变化,直到几天前一切正常。现在只有 Service Bus Trigger 个功能在工作,但 Timer Trigger 个功能不工作。

将字符串连接到存储 100% 正确,我什至重新生成了访问密钥。

我找到了启动主机的日志:

2021-05-25T15:23:10.703 [Error] The listener for function 'XXX' was unable to start.
Microsoft.Azure.WebJobs.Host.Listeners.FunctionListenerException : The listener for function 'XXX' was unable to start. ---> System.InvalidOperationException : Could not create BlobServiceClient to obtain the BlobContainerClient using Connection: Storage
   at Microsoft.Azure.WebJobs.Script.AzureStorageProvider.GetBlobContainerClient() at D:\a\s\src\WebJobs.Script\StorageProvider\AzureStorageProvider.cs : 69
   at Microsoft.Azure.WebJobs.Extensions.Timers.AzureStorageScheduleMonitor.GetStatusBlobReference(String timerName) at D:\a\s\src\WebJobs.Script\Timer\AzureStorageScheduleMonitor.cs : 146
   at async Microsoft.Azure.WebJobs.Extensions.Timers.AzureStorageScheduleMonitor.GetStatusAsync(String timerName)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at async Microsoft.Azure.WebJobs.Extensions.Timers.Listeners.TimerListener.StartAsync(CancellationToken cancellationToken) at C:\azure-webjobs-sdk-extensions\src\WebJobs.Extensions\Extensions\Timers\Listener\TimerListener.cs : 99
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at async Microsoft.Azure.WebJobs.Host.Listeners.SingletonListener.StartAsync(CancellationToken cancellationToken) at C:\projects\azure-webjobs-sdk-rqm4t\src\Microsoft.Azure.WebJobs.Host\Singleton\SingletonListener.cs : 70
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at async Microsoft.Azure.WebJobs.Host.Listeners.FunctionListener.StartAsync(??) at C:\projects\azure-webjobs-sdk-rqm4t\src\Microsoft.Azure.WebJobs.Host\Listeners\FunctionListener.cs : 68
   End of inner exception

我检查了 New Support Request -> Solutions 中的诊断,一切正常。 此外,当尝试使用与 Portal Azure 相同的配置从 Visual Studio 启动 AF 时,会出现相同的错误(但描述性较差)。

有什么问题吗?我还可以检查什么来找到这个问题的解决方案?

最新的功能主机版本 (3.0.15733.0) 中可能存在回归。 请设置应用程序设置 FUNCTION_EXTENSION_VERSION=3.0.15584.0(以前的功能运行时版本)。

回归将在下一个功能主机版本中修复: https://github.com/Azure/azure-functions-host/releases

之前我们已经将 FUNCTION_EXTENSION_VERSION 从 ~3 更新到 3.0.15584.0,看起来 3.0.15733.0 的问题已经解决,我可以看到最新版本是 3.0.15960(https://github.com/Azure/azure-functions-host/releases )

但是,从早上开始,计时器触发器再次失败,所以我尝试将 FUNCTION_EXTENSION_VERSION 恢复为 ~3,但运气不好,因为函数抛出了同样的错误。但是如果我们将 FUNCTION_EXTENSION_VERSION 设置为 3.0.15960.0.

,定时器触发器工作正常