问题标签 [nservicebus5]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
122 浏览

nservicebus - NServiceBus 5 - Sql Transport 不写入审计记录

我正在使用 sql 传输,并在我的配置文件中为发送者和端点定义了以下内容。

但是,当我的消息处理程序成功完成并且我检查表时没有记录存在时,表就成功创建了。我还需要做些什么来使它正常工作吗?

谢谢

0 投票
1 回答
1984 浏览

msmq - 仅发送端点不能发布消息 NserviceBus 5.2

我将 SendOnlyBus 与 NserviceBus 5.2 一起使用,我的设置代码就像

和 web.config

这会导致发布消息时出错。

无法在此端点上发布 - 未配置订阅存储。”

如果我使用内存持久性,它可以正常工作,但不适用于 Hibernate DB-Subscription,无法找出丢失或错误的内容。感谢任何帮助?

谢谢

0 投票
1 回答
255 浏览

c# - 如何测量 NServiceBus 中“Handle”方法的调用时间?

我需要在 IHandleMessages<> 接口的每个实例中测量 Handle 方法的调用时间。我尝试使用温莎城堡的拦截器,

带安装代码:

但从那一刻起,Handle 方法就没有触发。

我知道 NSB 中的性能计数器,但我需要更具体的、面向类型的测量。有可能并且可以实现吗?

0 投票
1 回答
346 浏览

nservicebus5 - NServiceBus 5.2 Nhibernate fluent mapping

Please help? My NServiceBus endpoint is:

My handler is:

My fluent mapping is:

The error I'm getting is:"ERROR NServiceBus.GenericHost Exception when starting endpoint. System.InvalidOperationException: No NHibernate properties found in your config". According to the documentation I need to use busConfiguration.UsePersistence<NHibernatePersistence>().RegisterManagedSessionInTheContainer();. To get public ISession Session { get; set; } in the handler. How do I get the fluent mapping to work? Any help greatly appreciated.

0 投票
1 回答
107 浏览

azure - 为什么 Azure 上的 NServiceBus 将“.events”附加到我的主题名称?

我有一个名为“response1”的 Azure 主题,我想订阅使用 NServiceBus 发送到该主题的消息。

我的问题是,NServiceBus 不是订阅 response1,而是在天蓝色上创建一个名为 response1.events 的新主题并订阅它。为什么 NServiceBus 会在某些东西上添加“.events”?我该如何阻止这种行为?

附加信息:

我的配置:

订阅配置:

以及我在代码中的总线配置(控制台应用程序):

0 投票
1 回答
213 浏览

azure - 为什么 Azure 上的 NServiceBus 不使用我指定的终结点名称?

我有一个控制台应用程序,它使用 NServiceBus 将消息发布到 Azure 主题。但是,NServiceBus 创建了一个名称不同的新主题,而不是我指定的主题。为什么是这样?

更多细节

我的消息配置如下所示。这意味着“TheResponse”类型的消息应该转到名称为“test1”的主题,对吗?

实际发生的情况是 NServiceBus 在 Azure 上以MyAssemblyName-MyMachineName.events的格式创建了一个新主题。

我们使用 Azure 服务总线传输。

如何让 NServiceBus 将事件发布到特定主题?我是否误解了 MessageEndpointMappings 的目的?

0 投票
1 回答
233 浏览

azure - 是否可以将 NServiceBus 端点(在 Azure 传输上)配置为接受简单字符串作为输入?

我们有一个 NServiceBus 端点来监控 Azure 服务总线队列(使用 Azure 作为传输)。但并非所有向队列发送消息的客户端都是基于 .NET 的。

可以将 NServiceBus 端点配置为接受简单的字符串作为输入吗?

我尝试使用实现 IMutateIncomingMessages 的类来拦截消息,但此时从 Azure 传输进行的反序列化已经失败。

我可以检查在实现 IMutateIncomingTransportMessages 的类中传入的消息,但我不确定这是否是正确的位置。

配置 NServiceBus 以处理以以下格式发布的消息的最佳方法是什么(请记住,这也可以通过 Java 或 Node SDK 或通过 Azure REST 端点来实现):

此消息的反序列化将失败,因为它包含一个字符串,而不是 Azure 传输反序列化程序所期望的字节数组。

PS:我知道可以将端点公开为 WCF 服务,但目前我们只有 NServiceBus.Host 进程从队列中拉出,而 WCF 解决方案对我来说不是正确的解决方案。

0 投票
2 回答
2847 浏览

azure - 在 NServiceBus 中接收 MessageDeserialization 异常

我刚刚熟悉了 NServiceBus,并且收到了 MessageDeserialization 异常和堆栈跟踪,如下所示。

对于一些环境信息......我正在使用带有队列的天蓝色持久性。我可以看到订阅表以及订阅者的所有端点地址。

我有 3 个 MVC Web API 托管应用程序。发布导致此异常的消息的服务/API 在其 app.config 中配置为订阅自身和其他 2 个 api。其他似乎没有问题的人只有 1 个订阅。第一个订阅它自己的一个事件。另一个订阅来自第 3 个服务/api 的 3 个事件。

我为解决问题而尝试过的事情。我使用约定来定义我的事件,但现在我的事件消息都实现了 IEvent。我还定义了 JsonSerializer。这是我的总线配置设置...

}

这是异常和堆栈跟踪详细信息...

8dea1c2f-babb-438d-8e4c-a4cd002f5ab6”、“NServiceBus.ExceptionInfo.Source”:“NServiceBus.Core”、“NServiceBus.ExceptionInfo.StackTrace”:“NServiceBus.MessageDeserializationException:尝试从传输消息中提取逻辑消息时出错8dea1c2f-babb-438d-8e4c-a4cd002f5ab6 ---> System.Exception: 找不到“Newtonsoft.Json.Linq.JObject”的元数据。\r\n请确保以下内容:\r\n1. 'Newtonsoft.Json.Linq.JObject' 包含在初始扫描中。\r\n2. “Newtonsoft.Json.Linq.JObject”实现“IMessage”、“IEvent”或“ICommand”,或者,如果您不想实现接口,则可以使用“不显眼模式”。\r\n 在 NServiceBus .Unicast.Messages。2 headers) in c:\\BuildAgent\\work\\3206e2123f54fce4\\src\\NServiceBus.Core\\Unicast\\Messages\\LogicalMessageFactory.cs:line 59\r\n at System.Linq.Enumerable.WhereSelectArrayIterator2.MoveNext()\r\n 在 System.Collections.Generic.List 1..ctor(IEnumerable1 集合)\r\n 在 System.Linq.Enumerable.ToList[TSource](IEnumerable 1.InvokeNext(T context) 在 c:\BuildAgent\ work\3206e2123f54fce4\src\NServiceBus.Core\Pipeline\BehaviorChain.cs:line 107\r\n at NServiceBus.BehaviorChain 1.InvokeNext(T context) in c:\BuildAgent\work\3206e2123f54fce4\src\NServiceBus.Core\Pipeline \BehaviorChain.cs:line 107\r\n 在 NServiceBus.BehaviorChain 1.InvokeNext(T context) 在 c:\BuildAgent\work\3206e2123f54fce4\src\NServiceBus.Core\Pipeline\BehaviorChain.cs:line 107\r\n在 NServiceBus.BehaviorChain 1.InvokeNext(T context) 在 c:\BuildAgent\work\3206e2123f54fce4\src\NServiceBus.Core\Pipeline\BehaviorChain.cs:line 107\r\n 在 NServiceBus.BehaviorChain1 source)\r\n
at NServiceBus.DeserializeLogicalMessagesBehavior.Extract(TransportMessage physicalMessage) in c:\\BuildAgent\\work\\3206e2123f54fce4\\src\\NServiceBus.Core\\Unicast\\Messages\\DeserializeLogicalMessagesBehavior.cs:line 93\r\n at NServiceBus.DeserializeLogicalMessagesBehavior.Invoke(IncomingContext context, Action next) in c:\\BuildAgent\\work\\3206e2123f54fce4\\src\\NServiceBus.Core\\Unicast\\Messages\\DeserializeLogicalMessagesBehavior.cs:line 40\r\n --- End of inner exception stack trace ---\r\n at NServiceBus.DeserializeLogicalMessagesBehavior.Invoke(IncomingContext context, Action next) in c:\\BuildAgent\\work\\3206e2123f54fce4\\src\\NServiceBus.Core\\Unicast\\Messages\\DeserializeLogicalMessagesBehavior.cs:line 47\r\n at NServiceBus.BehaviorChain
1.<>c__DisplayClass5.<InvokeNext>b__2() in c:\\BuildAgent\\work\\3206e2123f54fce4\\src\\NServiceBus.Core\\Pipeline\\BehaviorChain.cs:line 95\r\n at NServiceBus.ApplyIncomingTransportMessageMutatorsBehavior.Invoke(IncomingContext context, Action next) in c:\\BuildAgent\\work\\3206e2123f54fce4\\src\\NServiceBus.Core\\MessageMutator\\ApplyIncomingTransportMessageMutatorsBehavior.cs:line 20\r\n at NServiceBus.BehaviorChain1.<>c__DisplayClass5.<InvokeNext>b__2() in c:\\BuildAgent\\work\\3206e2123f54fce4\\src\\NServiceBus.Core\\Pipeline\\BehaviorChain.cs:line 95\r\n at NServiceBus.SubscriptionReceiverBehavior.Invoke(IncomingContext context, Action next) in c:\\BuildAgent\\work\\3206e2123f54fce4\\src\\NServiceBus.Core\\Unicast\\Subscriptions\\MessageDrivenSubscriptions\\SubscriptionReceiverBehavior.cs:line 32\r\n at NServiceBus.BehaviorChain1.<>c__DisplayClass5.<InvokeNext>b__2() in c:\\BuildAgent\\work\\3206e2123f54fce4\\src\\NServiceBus.Core\\Pipeline\\BehaviorChain.cs:line 95\r\n at NServiceBus.UnitOfWorkBehavior.Invoke(IncomingContext context, Action next) in c:\\BuildAgent\\work\\3206e2123f54fce4\\src\\NServiceBus.Core\\UnitOfWork\\UnitOfWorkBehavior.cs:line 42\r\n at NServiceBus.BehaviorChain1.<>c__DisplayClass5.<InvokeNext>b__2() in c:\\BuildAgent\\work\\3206e2123f54fce4\\src\\NServiceBus.Core\\Pipeline\\BehaviorChain.cs:line 95\r\n at NServiceBus.ChildContainerBehavior.Invoke(IncomingContext context, Action next) in c:\\BuildAgent\\work\\3206e2123f54fce4\\src\\NServiceBus.Core\\Unicast\\Behaviors\\ChildContainerBehavior.cs:line 17\r\n at NServiceBus.BehaviorChain1.InvokeNext(T context) in c:\BuildAgent\work\3206e2123f54fce4\src\NServiceBus.Core\Pipeline\BehaviorChain.cs:line 107\r\n at NServiceBus.BehaviorChain 1.<>c__DisplayClass5.<InvokeNext>b__2() in c:\\BuildAgent\\work\\3206e2123f54fce4\\src\\NServiceBus.Core\\Pipeline\\BehaviorChain.cs:line 95\r\n at NServiceBus.ProcessingStatisticsBehavior.Invoke(IncomingContext context, Action next) in c:\\BuildAgent\\work\\3206e2123f54fce4\\src\\NServiceBus.Core\\Monitoring\\ProcessingStatisticsBehavior.cs:line 23\r\n at NServiceBus.BehaviorChain1.InvokeNext(T context) in c:\ BuildAgent\work\3206e2123f54fce4\src\NServiceBus.Core\Pipeline\BehaviorChain.cs:line 107\r\n 在 NServiceBus.BehaviorChain 1.<>c__DisplayClass5.<InvokeNext>b__2() in c:\\BuildAgent\\work\\3206e2123f54fce4\\src\\NServiceBus.Core\\Pipeline\\BehaviorChain.cs:line 95\r\n at NServiceBus.AuditBehavior.Invoke(IncomingContext context, Action next) in c:\\BuildAgent\\work\\3206e2123f54fce4\\src\\NServiceBus.Core\\Audit\\AuditBehavior.cs:line 20\r\n at NServiceBus.BehaviorChain1.InvokeNext(T context) 在 c:\BuildAgent\work\3206e2123f54fce4\src\NServiceBus.Core \Pipeline\BehaviorChain.cs:第 107 行\r\n 在 NServiceBus.BehaviorChain1.Invoke() in c:\\BuildAgent\\work\\3206e2123f54fce4\\src\\NServiceBus.Core\\Pipeline\\BehaviorChain.cs:line 58\r\n at NServiceBus.Pipeline.PipelineExecutor.Execute[T](BehaviorChain1 pipelineAction, T context) in c:\BuildAgent\work\3206e2123f54fce4\src\NServiceBus.Core\Pipeline\PipelineExecutor.cs:line 129\r\n at NServiceBus.Unicast.Transport.TransportReceiver.ProcessMessage(TransportMessage message) in c :\BuildAgent\work\3206e2123f54fce4\src\NServiceBus.Core\Unicast\Transport\TransportReceiver.cs:line 328",

这是所要求的消息类......最初消息中有3个不同的“信息”,但试图简化,所以现在只有事件中的权限信息......

任何帮助将不胜感激

  • 保罗
0 投票
2 回答
1507 浏览

rabbitmq - 来自错误队列的 MassTransit 重定向消息

我正在浏览一些使用NServiceBus的示例,并且偶然发现了我希望MassTransit附带的一个功能(因为它是一项免费服务)。

该功能基于“中毒”消息。

如果由于您的系统中的错误,这些消息永远无法处理,并最终永久地出现在错误队列中。

NServiceBus有一个很酷的功能,一旦您纠正了代码中的错误,就可以将错误队列中的这些消息“重定向”到原始工作队列,然后重新传递

这是通过使用 NServiceBus 特定工具来完成的:- ReturnToSourceQueue.exe

MassTransit 是否有类似的工具来解决此类问题?

或者是否有另一种解决方法可用,最好与 RabbitMQ 一起使用。

0 投票
1 回答
120 浏览

nservicebus - NServiceBus 5 - Get handlers mapping

I have a NServiceBus project and it maps objects in my assemblies that implement IHandleMessage<Type>.

I'm wondering if there is any way to get a list of all mappings of Classes to their Handlers?