2014-02-28 3 views
0

주제로 전송 된 모든 메시지를 수신하는 가입을 원합니다. 그리고 다른 기존 구독에 필터와 일치하지 않는 모든 메시지를받는 구독을 원합니다. 나는 하나 또는 다른 하나를 얻을 수 있지만 동시에 둘 다를 얻을 수는 없습니다.NoMatchingSubscriptionException 및 AuditTrail Subscription을 사용하여 Azure Service Bus 주제를 설정하는 방법

구독이있는 항목을 만드는 기본 예제에서 구독은 1 = 1의 필터가있는 기본 규칙을가집니다. 해당 주제로 보낸 모든 메시지는 해당 구독으로 이동합니다. 예제에서는이 구독을 구독에 대한 감사 내역으로 사용할 수 있다고 제안합니다. 하지만 그 규칙을 지키면 그 설정이 불가능합니다. NoMatchingSubscriptionException

다음 시나리오를 사용할 수 있습니까?

PostTopic
- Subscription-MessageType-Known은 MessageType 속성이 설정된 모든 메시지를 가져옵니다. - Subscription-Audit-Trail이 주제에이 상자 밖으로 수 없습니다

답변

0

에 보낸 모든 메시지를 가져옵니다 - Subscription-NoFilter-Matched이 주제 에서 다른 필터와 일치하지 않는 모든 메시지를 가져옵니다. 이렇게 할 수있는 유일한 방법은 직접 필터를 사용하는 것입니다. 그래서, 당신은 '필터'를 알게되고, 다른 필터가 일치하지 않을 때에 만 일치하는 복잡한 집계 필터를 만듭니다.

우리가 과거에했던 또 다른 일 (그리고 우리가 보낸 쪽을 제어 한 곳)은 우리가 보내고있는 주제에 필터를 캐시하는 것이 었습니다. 그리고이 필터에 대한 우리의 메시지를 먼저 (클라이언트 측에서) 일치시킵니다. 우리는 성냥을 가졌다면 우리는 구독이 있다는 것을 알았지 만 그렇지 않다면 우리는 특정한 논리를 할 수있었습니다. 이것은 작은 퍼널 오버 헤드로 살 수 있고 송신 측을 제어 할 수있는 경우에만 적합합니다 ...

HTH

관련 문제