6
我正在構建的應用程序公開了幾個WCF服務(A,B)。在內部,它會消耗我們內部網絡上運行的其他幾個WCF服務(X,Y)。忽略WCF跟蹤日誌中的某些WCF服務
使用WCF消息日誌記錄,我希望只有我們的服務A,B和調用它們的外部客戶端之間的日誌流量。
WCF應記錄我的服務(A,B)和後端服務(X,Y)之間的數據。
過濾通過system.serviceModel /診斷/ messageLogging /過濾器部分成功有:
<filters>
<add nodeQuota="10" xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
/s:Envelope/s:Header/*[contains(text(),"MyServiceA")]
</add>
<add nodeQuota="10" xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" xmlns:a="http://schemas.microsoft.com/ws/2005/05/addressing/none">
/s:Envelope/s:Header/a:Action[contains(text(),"MyServiceA")]
</add>
</filters>
然而,這無法從我們的業務獲得更多的響應,SOAP 響應不包含文本的篩選依據。
的WCF MessageLogTraceRecord 不包含SOAP動作,但我似乎無法構建一個過濾器來訪問它:
<MessageLogTraceRecord>
<Addressing xmlns="http://schemas.microsoft.com/2004/06/ServiceModel/Management/MessageTrace>
<Action>http://opia.api.translink.com.au/ApiLocationService/2012/04/IApiLocationService/ResolveInputServiceFaultFault</Action>
</Addressing>
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Body>
...
WCF消息記錄和端到端的跟蹤設置爲所有的選項都啓用真正。 ActivityTracing和警告級別日誌記錄已啓用。
你想過濾,因爲你所關心的文件大小或噪音? MS服務跟蹤查看器用戶界面非常適用於過濾。 – 2012-04-19 06:20:42
主要是噪音。 「內部」服務非常健談,一次打電話給我們的服務包含30多個電話給他們。然而,內部服務接口已經過很好的測試,不能對其進行更改。 – geoffreys 2012-04-19 22:03:24