開發(fā)過程中經(jīng)常需要調(diào)試和線上環(huán)境查看異常日志的需求兔簇,但普通消息與異常消息混在一起實(shí)在是非常難得找示惊,上則NM的文檔夠你頭痛赴涵,所以就將Error級別的日志抽離出來摔吏。
本示例采用log4net來配置:
1鸽嫂、先配置web.config,添加:
2征讲、在直接下級添加:
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("內(nèi)容不正確");
LogHelper.Error("Post方法運(yùn)行錯誤", ex);
最終會出現(xiàn)兩個文件且error記錄都在error中info中無error記錄: