Rebus,发送消息到服务总线 Azure DLQ

问题描述 投票:0回答:1

有什么方法可以向服务总线 Azure 中的 DLQ 发送消息吗?

我已经尝试过了

await bus.Advanced.TransportMessage.Deadletter(errorDetails: "Let's hope it works");

但是没有成功。我假设这个方法将消息发送到Rebus的QueueError,如果是这样,有什么方法可以将消息从这个QueueError移动到DLQ吗?

azureservicebus rebus
1个回答
0
投票

以下方法调用

await bus.Advanced.TransportMessage.Deadletter(errorDetails: "Let's hope it works");

会将当前正在处理的消息移动到Rebus的错误队列中。 Rebus 的错误队列是一个名为“error”的普通队列,启动时会自动创建。

Rebus 不使用 Azure 服务总线的死信队列的原因是,如果使用的话,与所有其他传输相比,在 ASB 上运行时它的行为会有所不同,因为 ASB 的内置死信队列的工作方式与普通的死信队列略有不同。排队。

例如使用名为“error”的普通队列意味着您可以使用“error”作为其输入队列来启动Rebus,并让它消耗失败的消息,因为它实际上只是位于普通队列中的普通消息(它们只是碰巧有错误详细信息)附加在一个特殊的标题中)。

我希望现在更清楚了。 🙂

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.