Azure 函数从门户或 Visual Studio-Blob 触发器执行

Posted

技术标签:

【中文标题】Azure 函数从门户或 Visual Studio-Blob 触发器执行【英文标题】:Azure-functions execute from portal or visual studio-Blob trigger 【发布时间】:2019-11-06 13:35:18 【问题描述】:

我正在使用使用队列、计时器和 blob 触发器的 azure 函数。 我从 Visual Studio 发布代码并在门户中运行它。它在开发站点上运行数天(比如周末)...

它根据 Timer 函数从数据库中提取记录,根据队列记录将记录添加到队列中,进行拉取请求,获取数据并将数据推送到 blob 存储,并且从 blob 存储开始处理文件......一切都很好..

星期一早上,我在门户网站上停止了进程。

我对代码进行了一些更改并在 Visual Studio 上测试运行它,所有 Blob 存储、队列、计时器配置都指向相同的端点。

看起来 Visual Studio 的处理会回到过去并再次在 Blob 存储中查找记录并再次处理它们。可能是从上次 Visual Studio 项目运行时开始的......

我的问题是......当 blob 存储触发器运行时,它是否会根据项目运行的位置标记处理的 blob,或者标记已处理的 blob 和未处理的 blob。

看起来每次我从 Visual Studio 运行项目时,已经使用门户处理的 blob 正在再次处理..任何建议..

【问题讨论】:

我不确定为什么会这样,但我建议在本地开发解决方案时使用开发存储。在local.settings.json 中有一个名为StorageConnectionString 的设置并将其设置为"UseDevelopmentStorage=true",然后在您的函数绑定中设置Connection = "StorageConnectionString",然后使用Azure 存储资源管理器查看您的本地模拟存储。 @Sarah,到目前为止,这是设计使然。并且有一些解决方法,例如在下面的答案中的链接中循环/添加元数据,但不是一个好主意并且有一些限制。 【参考方案1】:

这是一个已知问题,你可以参考这个类似的*** issue,在函数应用GitHub中有一个open issue。

【讨论】:

以上是关于Azure 函数从门户或 Visual Studio-Blob 触发器执行的主要内容,如果未能解决你的问题,请参考以下文章

删除 Visual Studio 发布的 Azure 函数

无法在 Azure 门户中查看通过 Visual Studio 创建/部署的函数的代码,但是当我通过门户创建函数时可以

是否有任何 PowerShell 脚本或命令可以从 Azure 门户获取租户中所有用户访问角色的报告?

visual studio除了6还有哪个版本用得多而又不占内存?如何实现多visual studi

无法从 Visual Studio 2017 调试和发布 Azure 函数

在 Azure 门户中上传 Blob 时如何获取发件人 IP