2010-06-19 70 views
1

只是想加快速度。NLog。单身人士和调用类/方法/线程

2个问题..

我的目的是有一个单独的类,使NLOG可用于整个应用..这是正确的做法。

如何记录日志中条目的来源,即Class .. Method .. thread等。

回答

4

你的单身人士会做什么

像NLog(和log4j等)这样的库的优点之一是,当你登录时,它会记录相关的类记录器 - 这意味着你可以适当地调整记录。如果你有一个singleton只有一个Logger实例,你会立即失去这个好处。我建议你使用文档中显示的技术,每个类都有自己的记录器。

至于发布类名等,请看文档的layout renderers页面,该页面有很多选项:{callsite}{threadid}可能就是您要的。

+0

你在说什么..在你想登录的每个类中创建一个Nlog实例..那么它知道它从哪个类被调用? 我虽然单身将意味着它只是实例化一次..我有一种感觉,我对使用它的方式感到困惑...... – Adam 2010-06-19 08:03:04

+0

在你想要使用它的每个类中创建一个'Logger'的实例,是的...然后只需登录该记录器。是的,你最终会创建更多的实例,但受益于细粒度的配置。它不会像它会分别加载整个程序集的每个'Logger'实例... – 2010-06-19 08:06:16

+0

Jon ..我发现你的答案非常有帮助..起床速度快令人沮丧.. renderers页面已经解决了我的问题问题... 但通过在每个类中创建一个单独的日志实例,我登录..什么是我可以有翅片粒度控制?你是否基本上说我可以开启日志记录功能,是否还有其他好处。 另外..看到你是如此有帮助..有一个单一的或可能是在PC上的3个应用程序我想记录..如果我不发送他们到一个日志文件..你会以什么方式存储他们..你会用什么浏览器来浏览日志? – Adam 2010-06-19 08:13:35