我试图找到一种方法在配置文件中设置isdebugenabled false或true,
所以我可以随时打开或关闭它。谢谢!
答案 0 :(得分:7)
使用非常简单的日志记录设置
<targets>
<target xsi:type="File"
name="debug"
fileName="c:\temp\debug.txt"
layout="${longdate} ${uppercase:${level}} ${message}"
/>
</targets>
<rules>
<logger name="*" minlevel="Trace" writeTo="debug" />
</rules>
同样简单的代码示例
class Program
{
static void Main(string[] args)
{
var logger = new NLog.LogFactory().GetCurrentClassLogger();
if (logger.IsDebugEnabled)
{
logger.Debug("this is a debug message");
}
logger.Debug("this is another debug message");
}
}
当minLevel
设置为Debug或Trace时,两个logger.Debug
语句都将写入日志。如果将minLevel
提升到更高级别(Info,Warn,Off),则不会将任何语句写入日志。 logger.Debug
检查IsDebugEnabled
(从日志级别推断)。
通过选中IsDebugEnabled
,您当然可以获得性能提升(在您要记录计算值而不仅仅是字符串的情况下),并且更改记录器的minLevel
是切换的方法此