WCF入門-09。トレースログを出力する。(System.ServiceModel.MessageLogging)

サンプルコードWCFService-09.zip 直

WCFでは、アプリケーション構成ファイル(app.config)に、トレースログ出力の設定をするだけでWCFの処理の追跡・クライアントサーバー間でやりとりされるSOAPメッセージをログに出力することができます。通信データをログに出力するには、System.Diagonostics要素にSystem.ServiceModel.MessageLoggingトレースソースを設定します。system.diagnostics要素の設定例を以下に示します、サーバ側もクライアント側も設定は同じです。


































例は"c:\service.svclog"に通信ログが保存されるようになります。WCFのログはサービストレースビューアで見ることができ、サービストレースビューアは拡張子.svclogに関連付けされているので拡張子は.svclogとしておきます。以下のようにSOAP-XMLがログに出力されます。

参考:トレースログ出力時のオプション
logEntireMessage
メッセージ全体 (メッセージ ヘッダーと本文) を記録するかどうかを指定する値を取得または設定します。

true




http://localhost:8000/WCFService/HelloWCF
http://tempuri.org/ISampleService/HelloWCF




Hello WCF TextMessage
Text



false




http://localhost:8000/WCFService/HelloWCF
http://tempuri.org/ISampleService/HelloWCF