将Error异常日志从普通日志中剥离

开发过程中经常需要调试和线上环境查看异常日志的需求,但普通消息与异常消息混在一起实在是非常难得找,上则NM的文档够你头痛,所以就将Error级别的日志抽离出来。

本示例采用log4net来配置:

1、先配置web.config,添加:

将Error异常日志从普通日志中剥离_第1张图片

2、在直接下级添加:


将Error异常日志从普通日志中剥离_第2张图片
将Error异常日志从普通日志中剥离_第3张图片

FATAL > ERROR > WARN > INFO > DEBUG > ALL (低)-->

注意高亮处

InfoLog中配置 LevelMax=WARN ,也就是只记录到WARN 级别,不记录ERROR

ErrorLog中  从ERROR级别开始。

这样就可以将ERROR抽离出来。

3、定义日志类LogHelper

publicstaticclassLogHelper

{staticILog _logdebug = LogManager.GetLogger("Debug");staticILog _loginfo = LogManager.GetLogger("InfoLog");staticILog _logwarn = LogManager.GetLogger("Warn");staticILog _logerror = LogManager.GetLogger("ErrorLog");staticILog _logfatal = LogManager.GetLogger("Fatal");staticLogHelper()

{

log4net.Config.XmlConfigurator.Configure();

}publicstaticvoidInfo(stringmsg)

{

_loginfo.Info(msg);

}publicstaticvoidWarn(stringmsg)

{

_logwarn.Warn(msg);

}publicstaticvoidError(stringmsg)

{

_logerror.Error(msg);

}publicstaticvoidError(stringerrtitle, Exception ex)

{

_logerror.Error(errtitle, ex);

}publicstaticvoidFatal(stringmsg)

{

_logfatal.Fatal(msg);

}

}

4、使用

LogHelper.Info("内容不正确");

LogHelper.Error("Post方法运行错误", ex);

最终会出现两个文件且error记录都在error中info中无error记录:

你可能感兴趣的:(将Error异常日志从普通日志中剥离)