Azure Blob 存储触发器函数未触发

cra*_*den 5 azure azure-storage-blobs azure-functions

创建使用应用服务计划进行托管的 Azure 函数 blob 触发器模板时,该函数在配置为“始终开启”时正确触发。我通过在 Azure 控制台中运行应用程序并通过 Microsoft Azure 存储资源管理器添加文件进行了测试。在查看Monitor函数的屏幕时可以找到这些触发器的日志。

使用 Blob 存储模板创建相同的函数但这次选择“消耗”而不是应用服务计划时,监视器下没有显示任何内容。当我在 Azure 控制台中运行测试或将文件添加到目标 Blob 容器时,这些触发器日志不会显示在monitor屏幕上。

当将新文件添加到 Blob 容器时,如何确保触发此触发器模板?

Moh*_*rma 3

您可以以两种不同的模式运行 Azure Functions:消耗计划和应用服务计划。您必须在创建函数应用期间选择托管计划的类型。您之后不能更改它。

\n\n

消费计划

\n\n

消耗计划会在代码运行时自动分配计算能力,根据需要进行扩展以处理负载,然后在代码不运行时缩小计算能力。您不必为空闲虚拟机付费,也不必提前预留容量。这是无服务器应用程序模型。消耗计划背后的魔力都是通过秤控制器完成的。缩放控制器通过添加其他函数应用实例来自动缩放 CPU 和内存资源。缩放基于触发其函数的事件数量。

\n\n

应用服务计划

\n\n

在应用服务计划中,您的函数应用在基本、标准、高级和隔离 SKU 上的专用 VM 上运行。您可以通过选择不同的应用服务计划进行扩展,但函数应用程序始终运行。缩放是手动完成的,或者您可以启用自动缩放。

\n\n

由于本质上的差异,应用程序服务计划如果启用则始终可用,因此几乎立即触发。在基于消耗的计划中,如果不使用它,它就会进入空闲模式。

\n\n

附加参考:

\n\n

/sf/answers/3786581781/

\n\n

希望能帮助到你。

\n

  • 一个信息丰富的响应,但它没有解释为什么该函数没有被 blob 触发器唤醒。MS 网站表示,在消耗计划中,空闲函数有“最多”10 分钟的延迟 - https://learn.microsoft.com/en-us/azure/azure-functions/functions-bindings-storage-blob -trigger?tabs=csharp (6认同)