【问题标题】:NServiceBus - Saga Auditing - no handlers found exceptionNServiceBus - Saga 审计 - 未发现异常处理程序
【发布时间】:2016-04-16 18:37:14
【问题描述】:

我们正在使用托管在 .Net 4.6.1 Windows 服务中的 NServiceBus 5.2.14。 我们通过 AuditConfig 向我们的服务添加了 NServiceBus 审计:

<AuditConfig QueueName="AuditService"  />

当我们为包含 Sagas 的 Windows 服务打开审核时,我们注意到一些新订阅添加到我们的订阅 Sql 表中。比如这些:

SubscriberEndpoint                             MessageType
ServiceThatIsPublishingEventTypeA@MyMachine    MyAssembly.MessageTypeA,1.0.147.0
AuditService@MyMachine                         MyAssembly.MessageTypeA,1.0.147.0

似乎在对 Saga 服务启用审核后,正在发布事件(saga 正在订阅)的服务现在获得了对自身的递归订阅。

处理消息后,副本会成功推送到审核队列。

但是,我遇到的问题是,我还收到了推送到 ServiceThatIsPublishingEventTypeA.Error 队列中的消息副本,并且在我的日志中引发了异常。

例外是:

System.InvalidOperationException: No handlers could be found for message  type: MyAssembly.MessageTypeA
 at NServiceBus.LoadHandlersBehavior.Invoke(IncomingContext context, Action next) in  C:\BuildAgent\work\3206e2123f54fce4\src\NServiceBus.Core\Unicast\Behaviors\LoadHandlersBehavior.cs:line 29
at NServiceBus.BehaviorChain`1.InvokeNext(T context) in C:\BuildAgent\work\3206e2123f54fce4\src\NServiceBus.Core\Pipeline\BehaviorChain.cs:line 107
at   NServiceBus.BehaviorChain`1.&lt;&gt;c__DisplayClass4_0.&lt;InvokeNext&gt;b__0() in  C:\BuildAgent\work\3206e2123f54fce4\src\NServiceBus.Core\Pipeline\BehaviorChain.cs:line 94

这是有道理的,因为 ServiceThatIsPublishingEventTypeA 服务中没有 MyAssembly.MessageTypeA 事件的处理程序(它只是发布这些事件),但审核已添加此订阅。

所以我的问题是:递归订阅是否正确?通过 saga 审计流量的正确方法是什么(并避免引发错误)?

感谢您的帮助

【问题讨论】:

  • 您的 AuditService 是 NServiceBus 端点吗?如果是怎么配置的?我的意思是它处理什么消息?
  • 是的,AuditService 是一个 NSB 端点。它处理通过我们的各种服务运行的所有消息 - 它有一个处理程序 在我们所有的消息上。
  • 它将这些消息记录在我们的数据库中。

标签: nservicebus msmq messaging nservicebus5


【解决方案1】:

我猜端点会自动订阅它在程序集扫描中发现的事件,你能试试disable auto subscribe吗?

== 编辑

looking at the code on github 我创建了一个可用版本的拉取请求后,主要问题是审核组件正在处理它通过审核通道收到的订阅消息...

我还清理了一些小的冗余代码

【讨论】:

  • 嗨,肖恩,很抱歉延迟回复。禁用自动订阅没有解决问题。我在这里创建了一个仓库:github.com/seantarogers/AuditingIssue,如果你有机会看看的话。谢谢
  • 我去看看再回复你
  • 更新了我的答案,如果你想离线开会,请发邮件给我 sean.farmar at specific.net HTH
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-06-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-01
  • 1970-01-01
相关资源
最近更新 更多