WCFのサービスがトレースできますよ
WCFサービスのやり取りを追うのは大変です。
Wiresharkといったパケットモニタでも見ることが出来ますが、解析するのは・・・無謀かなと。名前付きパイプによるバインドを使っているとパケットモニタでは見ることが出来ませんし。
そこで登場するのが、なんとWindows標準で用意されている SvcTraceViewer ですよ。SvcTraceViewer を使うと WCFの処理順が追えます。リスト表示はもちろんですが、サーバー側とクライント側といった複数のファイルを追加で読み込めるので、プロセス間のやりとりをグラフ表示で確認することも出来ます。
前準備
Web.config や app.config にトレースの構成を記述します。
本番環境に入れる場合は処理負荷がどんなものかを確認したほうが良いです。
アプリケーションを実行するとトレースファイルが出力されます。
<system.diagnostics>
<trace autoflush="true" />
<sources>
<source name="System.ServiceModel"
switchValue="Information, ActivityTracing"
propagateActivity="true">
<listeners>
<add name="sdt"
type="System.Diagnostics.XmlWriterTraceListener"
initializeData= "SdrConfigExample.e2e" />
</listeners>
</source>
</sources>
</system.diagnostics>
SvcTraceViewer でトレースをみる
C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Tools
などにある SvcTraceViewer.exe を起動します。
ファイルメニューの開くと、追加によって複数のファイルを同時に見ることが出来ます。
ファイルを個別で見ると時系列を追うのがすごく大変ですが、これは便利です。
リスト表示ですね。
処理時間が確認できます。
プロセス間グラフ表示が出来ますし、スレッド間グラフも表示できますよ。
画面上部にある開始と終了で、表示する時間を絞り込むことが出来ます。
参考
https://msdn.microsoft.com/ja-jp/library/ms732023(v=vs.110).aspx
https://msdn.microsoft.com/ja-jp/library/aa751795(v=vs.110).aspx
http://www.codeproject.com/Articles/17258/Debugging-WCF-Apps