首页 > 解决方案 > Azure Function App 在 Visual Studio 调试中未触发 TimerTrigger

问题描述

我有之前能够调试的 Azure Function 应用程序,但现在当我在 Visual Studio 调试模式下启动它时它不会触发。函数如下所示:

public static void RunDownloadTask([TimerTrigger("0 */30 * * * *")] TimerInfo timerInfo, TextWriter log)
{...}

当我开始在 Visual Studio 中进行调试时,我曾经得到如下输出,但现在我只在控制台中得到前两行消息。其余的“接下来的 5 次……”没有出现,并且该函数永远不会被触发。有没有人经历过这样的事情并且知道如何解决它?看起来我部署到 Azure 应用服务的实例继续工作,但我不知道为什么我不能再在本地以调试模式运行它。

Found the following functions:
ChaseFTPDownloader.Functions.RunDownloadTask
The next 5 occurrences of the schedule will be:
10/5/2020 4:30:00 PM
10/5/2020 5:00:00 PM
...

标签: azureazure-functions

解决方案


我可以重现您的问题:

在此处输入图像描述

这是Visual Studio的设置问题。

解决方案:

只需在 VS 中右键单击您的 functionapp 并将此命令添加到项目的属性中:

start --verbose

在此处输入图像描述

在此处输入图像描述

之后你会看到和以前一样的日志:(这个变化是最近几个月更新的。)

在此处输入图像描述

我认为你的功能应该开始。为什么你没有看到它触发是因为你的timetrigger的cron表达式。(它有30分钟的间隔,第一次不会触发。)

请做一个测试,让我知道这是否可以帮助你。


推荐阅读