Azure服务总线死信队列

时间:2017-10-20 10:43:38

标签: azure azureservicebus

我正在使用azure服务总线主题和订阅机制,并希望处理所有死信队列中的消息。

此外,我想通过C#中的azure web作业处理消息,并将它们发送回队列。所以我想知道如何通过我的应用程序处理deadletter队列中的消息?

3 个答案:

答案 0 :(得分:5)

当消息被破坏时,它会进入读取它的订阅的死信队列。除了将/$DeadLetterQueue附加到订阅名称之外,您可以像访问原始订阅一样访问它。

答案 1 :(得分:1)

  

此外,我想通过C#中的azure web作业处理消息,并将它们发送回队列。

当spodger指出你的死信订阅的路径是:

{topic-path}/Subscriptions/{subcription-name}/$DeadLetterQueue

您可以使用WebJobs SDK for Service Bus并利用 ServiceBusTrigger 访问您的死信队列消息,如下所示:

public void ProcessDeadletterQueue(
    [ServiceBusTrigger("topicName", "subscriptionName/$DeadLetterQueue")] BrokeredMessage message)
{
    //TODO:
}

有关详细信息,请参阅here

答案 2 :(得分:1)

  

当一条消息从服务总线实体(队列或主题订阅)中被删除时,它将被移动到同一实体的死者路径中。邮件的自定义属性 DeadLetterReason DeadLetterErrorDescription 中提供了死信的原因。

为了接收死信,

client/login