在我们的项目中,我们需要将客户端日志记录传输到服务器。 在服务器端,我们创建了一个WCF服务,它可以接收日志记录行并将它们转储到平面文件/ xml文件/数据库(不重要)。 在客户端,我们创建了一个RemoteTraceListener(具有配置端点的属性等),调用该日志服务。我们使用标准.Net跟踪跟踪源(TraceData,TraceEvent)来创建日志记录。
现在,这一切顺利,除非我们将RemoteTraceListener连接到" System.ServiceModel"在客户端跟踪源以调查其他服务调用。这显然是非常错误的。
之后,这些消息一直在泛滥。请问解决这种递归的想法?
答案 0 :(得分:0)
经过彻底搜索后,可能的解决方案分为三类:
我们选择遵循最后一种方法。我们已经重写了TraceListener以在内部写入队列。在内部启动第二个AppDomain,将日志记录出列并传输到服务器。这可以写半天。