我可以在log.Trace之前使用log.IsDebugEnabled吗?

时间:2015-09-25 15:40:44

标签: c# log4net

我正在使用log4net来记录来自我的c#应用程序的消息。我想知道在记录跟踪条目时是否可以使用以下代码:

if (log.IsDebugEnabled)
     log.Trace("MY trace entry");

我正在假设如果将日志记录级别设置为trace,那么将始终启用调试。由于调试和跟踪仅用于故障排除,因此允许任何调试代码也进入此块。

1 个答案:

答案 0 :(得分:2)

有可能使用类似LevelRangeFilter的东西来禁用调试级别的日志记录,但是在traceLevel上保持启用状态,这可能会导致方法出现问题

那么为什么不检查实际水平呢?

例如

if (log.Logger.IsEnabledFor(log4net.Core.Level.Trace))
    log.Trace("MY trace entry");