使用Log4Net进行日志记录时,将调用日志的类放入日志文件中非常容易.我在过去发现,这使得跟踪代码并查看类中的流程变得非常容易.在Log4Net中,我在转换模式中使用%logger属性,如下所示:
这给了我想要的输出:
2008-09-19 15:40:26,906 [3132] ERROR Log4NetTechDemo.Tester [(null)] - Failed method
您可以从输出中看到调用日志的类是Log4NetTechDemo.Tester,因此我可以很容易地将错误追溯到该类.
在Logging Applicaton Block中,我无法通过简单的日志调用来弄清楚如何执行此操作.有谁知道怎么做?如果是这样,那么这样做的一个例子或步骤将非常有帮助.
将调用方法添加到LogEntry的ExtendedProperties字典中; 假设您尚未从格式化程序模板中删除ExtendedProperties标记,当然.
把这样的东西放在日志包装器中:
public void LogSomething(string msg) { LogEntry le = new LogEntry { Message = msg }; le.ExtendedProperties.Add("Called from", new StackFrame(1).GetMethod().ReflectedType); Logger.Write(le); }
在日志的末尾调用它会产生类似的结果:
Extended Properties: Called from - LAB_Demo.Tester