如何在整个ASP.NET应用程序和后端SOA体系结构中跟踪用户

本文关键字:SOA 后端 体系结构 用户 跟踪 应用程序 NET ASP | 更新日期: 2023-09-27 18:21:30

我们有一个ASP.NET 4应用程序,并且对一些模块使用silverlight。我们应用程序的主要业务是服务。我们目前正在使用WCF 4进行从UI前端到后端的调用。

我想在使用应用程序时跟踪用户的活动。我考虑的一种方法是获取会话id和用户,并将其一直传递到后端,并将主要函数的调用记录到数据库中。

有没有人有另一种更清洁、更稳健的想法?

我知道这不是很多信息,但我至少需要一个起点。

如何在整个ASP.NET应用程序和后端SOA体系结构中跟踪用户

请参阅端到端跟踪,以及来自"发出用户代码跟踪"的以下代码:

// Creating Activities
Guid oldID = Trace.CorrelationManager.ActivityId;
Guid traceID = Guid.NewGuid();
ts.TraceTransfer(0, "transfer", traceID);
Trace.CorrelationManager.ActivityId = traceID; // Trace is static
ts.TraceEvent(TraceEventType.Start, 0, "Add request");
// Emitting Traces within a User Activity
double value1 = 100.00D;
double value2 = 15.99D;
ts.TraceInformation("Client sends message to Add " + value1 + ", " + value2);
double result = client.Add(value1, value2);
ts.TraceInformation("Client receives Add response '" + result + "'");
// Stopping the Activities
ts.TraceTransfer(0, "transfer", oldID);
ts.TraceEvent(TraceEventType.Stop, 0, "Add request");
Trace.CorrelationManager.ActivityId = oldID;