2016-10-14 1 views
0

우리는 NSB 5를 사용하고 있습니다. Server1에 NSB 끝점 ("BusinessEndpoint")이 있고 Server2에 NSB 감사 끝점 ("AuditEndpoint")이 있습니다.NServiceBus : 다른 서버의 끝점 감사

"BusinessEndpoint은"다음 구성 사용하여 "AuditEndpoint"감사 메시지를 보내도록 구성되어

<section name="AuditConfig" type="NServiceBus.Config.AuditConfig, NServiceBus.Core" /> 
... 
<AuditConfig QueueName="[email protected]" /> 

가 AuditEndpoint은과 같이 설정 : Server1의

public class EndpointConfig : IConfigureThisEndpoint, AsA_Server 
{ 
    public void Customize(BusConfiguration configuration) 
    { 
     configuration.EndpointName("AuditEndpoint"); 
     configuration.UseSerialization<JsonSerializer>(); 
     configuration.UsePersistence<NHibernatePersistence>(); 

     // stop processing incoming subscription control messages 
     configuration.Pipeline.Remove("ProcessSubscriptionRequests"); 

     var conventions = configuration.Conventions(); 

     conventions.DefiningMessagesAs(t => t.Namespace != null && t.Namespace.Contains("Messages")); 
    } 
} 
  • 엔드 포인트 수 NServiceBus를 사용하여 Server2의 끝점으로 일반 (비 감사) 메시지를 보냅니다.
  • 감사는 Server2 (AuditEndpoint와 동일한 서버)에 설치된 모든 엔드 포인트에 대해 작동합니다.

그러나 AuditEndpoint는 BusinessEndpoint에서 감사 메시지를받지 못하는 것 같습니다.

AuditEndpoint가 하나 뿐인 다른 서버에서 감사 할 수 있습니까?

도움 주셔서 감사합니다. 코드에서

답변

1

AuditEndpoint의 이름이 auditingissue처럼 보이는 (그리고이 endpoint's input queue?의 이름)이 감사 메시지가 잘못된 대기열로 전송되는 것을 의미

, 무엇을 잘못 소리 것은

입니다

감사는 Server2 (AuditEndpoint와 동일한 서버)에 설치된 모든 끝점에 대해 작동합니다.

확인할 수 있습니까?

검사 할 또 다른 사항은 나가는 대기열입니다. MSMQ의 나가는 대기열에서 보내려는 감사 메시지가 있어야합니다. a. 잘못된 컴퓨터 이름 b. 해당 컴퓨터의 잘못된 대기열 (server2)

그게 도움이 되나요?

+0

샘플 코드에서 올바르지 않은 엔드 포인트 이름을 갱신했습니다. 감사는 발신 대기열을 확인합니다 – jonho

+0

발신 대기열에 처리되지 않은 일부 메시지가 있습니다. 2 개의 서버 사이에 Local Traffic Manager가 재구성되었습니다. 필요한 모든 것은 BusinessEndpoint를 다시 시작하고 감사가 작동하는 것입니다. – jonho