我有一个使用用户名和密码保护的WCF服务(使用SqlMembershipProvider)。我想记录每次(成功和失败)登录尝试此服务,并使用Logging Application Block将用户凭据保存到数据库。当我打开WCF日志记录并使用Logging Application Block跟踪它时,我得到类似这样的信息(一次登录尝试大约有100条日志):
Timestamp: 6/5/2009 12:03:01 PM
Message: <TraceRecord xmlns="http://schemas.microsoft.com/2004/10/E2ETraceEvent/TraceRecord" Severity="Start"><TraceIdentifier>http://msdn.microsoft.com/en-US/library/System.ServiceModel.Diagnostics.ActivityBoundary.aspx</TraceIdentifier><Description>Activity boundary.</Description><AppDomain>IX.Services.Host.vshost.exe</AppDomain><ExtendedData xmlns="http://schemas.microsoft.com/2006/08/ServiceModel/DictionaryTraceRecord"><ActivityName>Execute 'Services.Contracts.ILoginService.Login'.</ActivityName><ActivityType>ExecuteUserCode</ActivityType></ExtendedData></TraceRecord>
Category: System.ServiceModel
Priority: 2147483647
EventId: 131085
Severity: Start
Title:
Machine: PC204
Application Domain: Services.Host.vshost.exe
Process Id: 7864
Process Name: D:\..\Services.Host.vshost.exe
Win32 Thread Id: 6392
Thread Name:
Extended Properties: TraceEventCache - System.Diagnostics.TraceEventCache
我无法从此日志中找到任何有用的信息(即用户凭据)。所以,我的问题是:如何使用Logging Application Block将用户凭据从WCF服务记录到数据库?
提前感谢您的回答!