2016-02-02 5 views
0

В настоящее время я передаю исключения третьим сторонам службы слежения за телеметрией (Raygun). Одна из деталей, которую я хочу включить в эти журналы исключений, - это фактическое содержимое сообщения, идеально сериализованное в JSON.Получение доступа к телу сообщения при обработке ошибок в NServiceBus Version 3

Я обрабатываю это в конце MessageHandler. Я знаю, что я мог бы также использовать интерфейс IManageMessageFailures, но затем я теряю преимущества повторных попыток второго уровня.

В настоящее время я делаю это:

public void End(Exception e) 
{ 
    // get the current message context 
    var context = this.Bus.CurrentMessageContext; 

    // now where do I get the body of the message from? 
    this.ExceptionLogger(new Log(e, context.WhereAreYouMessage.SerializedAsString())); 
} 

Это NSB 3,3. Я замечаю, что могу наложить CurrentMessageContext на NServiceBus.Unicast.MessageContext, но свойство TransportMessage, содержащее сообщение Body, является закрытым.

Как я могу получить копию сообщения, вызвавшего исключение?

ответ

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

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