当前位置: 首页 > 知识库问答 >
问题:

Azure-functions 从 portal 或 visual studio-Blob 触发器执行

谷梁煌
2023-03-14

我使用的是使用队列、定时器和blob触发器的azure函数。我从VisualStudio发布代码,并在门户中运行。它在开发站点上运行了几天(比如周末)。。。

它根据数据库中的计时器功能提取记录,根据队列记录将记录添加到队列中,执行拉取请求,获取数据,然后将数据推送到blob存储,并开始处理blob存储器中的文件……一切正常。。

周一早上,我在门户网站上停止了这个过程。

我对代码做了一些修改,并在visual studio上测试运行,所有blob存储、队列、定时器配置都指向相同的endpoint。

看起来可视化工作室的处理会回到过去,再次在 Blob 存储中查找记录,然后再次处理它们。也许是从上次视觉工作室项目运行时开始的。

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

看起来每次我从VisualStudio运行项目时,都会再次处理已使用portal处理的Blob。有什么建议吗。。

共有1个答案

林冥夜
2023-03-14

这是一个已知问题,您可以参考类似的stackoverflow问题,以及函数app GitHub中的一个开放问题。

 类似资料:
  • 我的存储容器中大约有35k blob文件。其中一些是在部署功能之前的旧版本,一些是在部署功能应用之后的旧版本。 这是我的函数签名 我的理解是,这个功能将不断处理所有新旧文件。但是当我在Azure portal上看到那个日志时,这就是发生的事情。 < Li > 2020-01-21t 09:02:56.103[信息]已执行' watch-portal-blob '(成功,Id = 37 CFAF 5

  • 如果你使用blob存储触发器阅读Azure WebJobs上的留档,它们会提到这不是很可靠: WebJobs SDK扫描日志文件以查看新的或更改的blob。这个过程不是实时的;在创建blob后的几分钟或更长时间内,函数可能不会被触发。此外,存储日志是在“尽力而为”的基础上创建的;无法保证所有事件都将被捕获。在某些情况下,日志可能会丢失。如果您的应用程序无法接受blob触发器的速度和可靠性限制,建议

  • 我使用blob触发器读取blob内容,作为pandas DF进行处理,并将blob附加到我使用的Azure SQL server。 blob触发器没有按预期工作,因此我将main函数中的所有代码都定义为: 但是,我得到了以下错误: 有人可以帮助我找到此问题的原因吗? function.json的配置如下:

  • 我已将 Azure 函数设置为运行 Blob 触发器,(因此,当将 Blob 添加到容器时,它应该触发)。在门户中打开函数应用之前,函数不会运行。然后,它将拾取已添加的任何 blob 并像往常一样处理它们。为什么需要在门户中打开函数应用才能启动我的作业?这几乎就像函数应用程序进入睡眠状态,然后在我浏览到它时唤醒。我该如何防止这种情况发生? 这是我的克朗

  • 当我的函数方法签名如下时,我有一个成功触发的v3 WebJob: 然而,当我添加一个输出blob时,BlobTrigger永远不会触发。 下面的文档如下:https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-storage-blob#output

  • 我正在尝试创建一些无服务器体系结构,并且担心在 blob 触发器上使用 Azure 函数。 我有Azure Function 1,它是一个队列触发器,它获取一条消息以运行对API的请求,该API生成文件并将其放置在blob存储中,该函数不等待响应。然后我想创建一个Azure Function 2,将该blob/链接发送到第二个地方。但是我正在阅读有关Blob触发器不能保证为每个blob触发的信息,