【发布时间】:2016-04-05 05:12:27
【问题描述】:
我在 Azure Workerrole 上运行 NServiceBus 终结点。我现在将所有诊断信息发送到表存储。我在 DLQ 中收到消息,但我不知道为什么我的表存储中没有记录任何异常。
事实证明,NSB 将异常记录为 INFO,这就是为什么我无法在所有实际的详细日志记录之间轻松发现它们。
在我的例子中,无法解析命令处理程序的依赖关系,因此 Autofac 会引发异常。我完全明白为什么抛出异常,我只是不明白为什么它们被记录为 INFO。该消息最终出现在我的 DLQ 中,而我只有一个 INFO-trace 来了解原因。
在 NSB 中以这种方式处理异常是否有原因?
【问题讨论】:
-
当您说“事实证明 NSB 将异常记录为 INFO”时,您的意思是处理程序未能加载异常还是实际上是所有异常?如果加载了处理程序并引发了异常,它将被记录为错误。你能澄清一下吗?
-
我的意思是处理程序加载失败在日志中显示为信息:2016-03-31 08:32:45.910 INFO NServiceBus.Unicast.Transport.TransportReceiver 无法处理消息 Autofac.Core .DependencyResolutionException:在“CommandHandler”类型上使用“Autofac.Core.Activators.Reflection.DefaultConstructorFinder”找到的所有构造函数都不能使用可用的服务和参数调用,我希望这将被记录为错误,而不是 INFO。
标签: nservicebus azureservicebus