2012-04-06 4 views
1

Я пытаюсь настроить NServiceBus на Azure. Во время локального развития я использую очереди хранилищ, а при развертывании в облаке я использую Azure Service Bus. По какой-то причине при возникновении ошибки сообщения не перемещаются в очередь ошибок. На самом деле очередь ошибок даже не создана.очереди ошибок NServiceBus в Azure

В моем файле Web.config я имею следующую конфигурацию:

<MessageForwardingInCaseOfFaultConfig ErrorQueue="myApp-errors"/> 

При настройке NServiceBus я называю:

.MessageForwardingInCaseOfFault() 

При выходе из строя сообщение, последняя ошибка в журнале всегда

Failed raising 'transport message received' event for message with ID=170ad256-b559-417e-8b34-3882045cc19e 

Любые мысли об этом? Сообщения, похоже, работают, это просто обработка ошибок, которая не работает.

+0

вы нашли решение этой проблемы? –

ответ

3

Моя первая догадка, что очередь ошибка не может быть создана как captials в имени не допускаются

Если это не сработает, мы должны сделать более тщательной ananlysis, но это потребует немного больше информации из журналов.

Надеется, что это помогает

+0

Если я не могу понять это сегодня, я попытаюсь собрать всю возможную информацию и отправить ее вам по почте. Заранее спасибо! – svb

+0

Это была ошибка? – willem

0

У меня был этой же проблема с NServiceBus 3.3.

Вот что решило проблему для меня. Если очередь Azure не отмечена как транзакционная, то NServiceBus никогда не захочет отправлять сообщение в очередь ошибок - он просто исчезает в эфире.

Кроме того, повторы второго уровня не работают на очередях Azure - вы получаете предупреждение о том, что очередь должна находиться на той же машине, что и процесс.

Итак, если вы не отключите SLR, используя описанную здесь технику .DisableSecondLevelRetries() или описанную здесь процедуру app.config, NServiceBus будет выгружать сообщения в очередь повторов вместо очереди ошибок.

Чтобы получить эту работу:

Disable Второго уровень Повторных Убедитесь, что Azure очередь настроена быть транзакционными (даже если они не находятся в лазури)

 Смежные вопросы

  • Нет связанных вопросов^_^