Azure功能:仅针对新事件配置blob触发器

问题描述:

我的天蓝色存储中大约有80万个blob.当我使用blobTrigger创建azure函数时,它将开始处理存储中所有的blob.如何配置仅针对新的和更新的Blob触发我的功能?

I have about 800k blobs in my azure storage. When I create azure function with a blobTrigger it starts to process all blobs that I have in the storage. How can I configure my function to be triggered only for new and updated blobs?

当前无法执行此操作.在内部,我们通过在控制容器azure-webjobs-hosts中存储收据来跟踪处理了哪些Blob.任何没有收据的Blob或旧的收据(基于Blob ETag)将被处理(或重新处理).这就是要处理您现有的Blob的原因-它们没有收据. BlobTrigger当前旨在确保与路径模式匹配的容器中的所有blob最终得到处理,并在它们每次更新时重新处理.

There is no way to do this currently. Internally we track which blobs we have processed by storing receipts in our control container azure-webjobs-hosts. Any blob not having a receipt, or an old receipt (based on blob ETag) will be processed (or reprocessed). That's why your existing blobs are being processed - they don't have receipts. BlobTrigger is currently designed to ensure that ALL blobs in a container matching the path pattern are eventually processed, and reprocessed any time they are updated.

如果您对此充满热情,可以在我们的仓库此处,其中包含有关您的情况的详细信息.

If you feel passionately about this, you can log a feature request in our repo here with details on your scenario.