来自 Azure 日志应用程序 + Azure 队列的排队消息会发生什么情况?

问题描述

问题

Azure 队列步骤(在逻辑应用程序中)是否自动出列消息?

以下是一些背景信息:

我有一个逻辑应用程序,它被设置为将字符串插入到 azure 队列中。 入队后,函数应用程序将通过队列触发器调用。 到我的函数应用程序处理此消息时,队列现在是空的。 或者我的函数应用程序处理的队列触发器(它没有明确地出队/删除任何排队的消息)是否会自动出队?

我注意到,当我通过手动将消息插入队列(通过 Azure 存储资源管理器)来测试队列时,该消息确实会自行消失。所以这让我觉得队列触发器会以某种方式自动删除消息(即出列)?

谢谢。

解决方法

我不明白这个问题:

Azure 队列步骤(在逻辑应用程序中)是否自动出列消息?

对消息进行排队不会使消息出队。这是由同一队列触发的 azure 函数完成的。成功处理消息后,函数运行时会将消息标记为已完成,因此它不会再次出现。如果失败,它会重试一定数量的重试。

所以:

或者由我的函数应用程序处理的队列触发器(它没有明确地出队/删除任何排队的消息)是否会自动出队?

是的!

请参阅 this GitHub issue 以供参考。太糟糕了,它没有在 the docs

中明确提及