Azure WebJobs SDK Service Bus DeadLetter队列

时间:2014-10-14 21:58:17

标签: azure servicebus azure-webjobs azure-webjobssdk

使用WebJobs SDK时,将BrokeredMessage移动到deadletter队列的正确方法是什么?通常我只会调用msg.DeadLetter()。但是,SDK负责管理代理消息的生命周期。如果方法返回成功,它将调用msg.Complete(),如果发生异常,它将重试该消息。我需要告诉ServiceBus队列将消息移动到deadletter队列的第三种情况,因为它是一个错误消息。

1 个答案:

答案 0 :(得分:6)

您可以显式地对服务总线队列进行deadletter,并在消息被删除时触发一个函数。

public static void ProcessSBQueueMessage(
[ServiceBusTrigger("inputqueue")] BrokeredMessage inputText)
{
    inputText.DeadLetter("Webjobs", "webjobsdescription");
    Console.WriteLine(inputText);
}

public static void ProcessSBDeadLetterQueueMessage(
[ServiceBusTrigger("inputqueue/$DeadLetterQueue")] BrokeredMessage inputText)
{
    Console.WriteLine(inputText);
}