当前位置:  开发笔记 > 编程语言 > 正文

记录应用程序块 - 记录调用者

如何解决《记录应用程序块-记录调用者》经验,为你挑选了1个好方法。

使用Log4Net进行日志记录时,将调用日志的类放入日志文件中非常容易.我在过去发现,这使得跟踪代码并查看类中的流程变得非常容易.在Log4Net中,我在转换模式中使用%logger属性,如下所示:


这给了我想要的输出:

2008-09-19 15:40:26,906 [3132] ERROR Log4NetTechDemo.Tester [(null)] - Failed method

您可以从输出中看到调用日志的类是Log4NetTechDemo.Tester,因此我可以很容易地将错误追溯到该类.

在Logging Applicaton Block中,我无法通过简单的日志调用来弄清楚如何执行此操作.有谁知道怎么做?如果是这样,那么这样做的一个例子或步骤将非常有帮助.



1> lotsoffreeti..:

将调用方法添加到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

推荐阅读
跟我搞对象吧
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有