使用BlobTrigger的Python函数V2 - 部署导致重新触发所有blob [英] Python Function V2 using BlobTrigger - Deploy cause retriggering all blobs

查看:135
本文介绍了使用BlobTrigger的Python函数V2 - 部署导致重新触发所有blob的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

亲爱的所有人,

在Linux消费计划上运行Python Functions V2时,我会指出一个非常糟糕的行为。

I would point out a very bad behavior when running Python Functions V2 on a Linux Consumption Plan.

我在容器XXX上有一个简单的blob触发器,当我重新部署(使用VSCode包部署)我从AppInsight指标看到的功能时,容器XXX中已经存在的所有blob都被重新处理。

I have a simple blob trigger on the container XXX, when I re deploy (using VSCode package deploy) the function I see from AppInsight metrics that all the blob already present in the container XXX are re-processed.

你能帮我弄清楚为什么会这样吗?

Can you help me to figure out why this happens?

谢谢

Roberto

推荐答案

您好Roberto

Hi Roberto

感谢您提供此反馈!我想重现这个问题,并在必要时在内部与产品团队联系。如果这是您的环境特有的问题,您的Azure订阅是否包含支持计划?最后,你可以
分享你的功能应用名称
间接按照此处给出的指导
?b


更新:

这可能是对
此方案中的已知行为
。解释为什么会发生这种情况:无论你的环境如何使用Python& Linux,blob触发器,按设计,跟踪新的&通过维护
更新blob blob收据 。这些收据通过
他们的eTags

函数运行时的主机ID
。当您重新发布您的功能应用时,它将导致更改您的主机ID,并且您之前不再应用的eTag->主机ID相关性会导致新主机重新处理您现有的所有
blobs - 你观察到的行为。建议使用  事件网格  触发;你有没有探索过这个替代方案?

Thank you for providing this feedback! I would like to reproduce this issue and reach out, internally, to product team if need be. In case this is an issue specific to your environment, does your Azure subscription carry a support plan? Lastly, could you share your function app name indirectly as per guidance given here?

UPDATE:
This is likely an observation of a known behavior in this scenario. To explain why this happens: Irrespective of your environment with Python & Linux, the blob trigger, by design, keeps track of new & updated blobs by maintaining blob receipts in azure-webjobs-hosts container. These receipts are correlated by their eTags to host ID of your Functions runtime. When you re-publish your function app, it'll result in change of your host ID and the eTag->host ID correlations you previously had will no longer apply which then results in the new host re-processing all of your existing blobs -- the behavior you've observed. The recommendation is to use Event Grid trigger instead; have you explored that alternative yet?


这篇关于使用BlobTrigger的Python函数V2 - 部署导致重新触发所有blob的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆