推荐的方法是在localhost中的开发过程中调试像这样的处理程序中的异常:
class MyEventHandler : IHandleMessages<MyEvent>
{
public async Task Handle(BlogLinkCreated message)
{
await Task.Delay(100);
throw new Exception();
}
}
我在调试输出中看到了一些异常,但是我不知道它们来自何处。我想查看stacktrace,最好是通过调用堆栈,并查看局部变量的值。
答案 0 :(得分:0)
Rebus会记录执行处理程序时捕获到的异常,包括异常通过在它们上调用.ToString()
所揭示的所有内容。
这包括完整的堆栈跟踪,并且如果您正在运行代码的Debug版本,它还将包括源文件行号。
应该很容易-只要您没有以某种方式禁用日志记录-找出哪一行代码会抛出任何冒泡的异常,以便Rebus看到。
如果您使用Visual Studio开发代码,也可以直接按F5键(或使用附加的调试器启动应用程序使用的任何热键),然后等待调试器打破异常。 / p>