log4net快速上手

原文地址:https://www.cnblogs.com/lsgsanxiao/p/5845300.html

略有删改


1.配置文件,可以单独创建log4net.config文件,然后手动指定目录,也可以在项目的app.config或web.config的configuration节点下插入以下代码

xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
configSections>
<log4net>
<logger name="logerror">
<level value="ERROR" />
<appender-ref ref="ErrorAppender" />
logger>
<logger name="loginfo">
<level value="INFO" />
<appender-ref ref="InfoAppender" />
logger>
<appender name="ErrorAppender" type="log4net.Appender.RollingFileAppender">

<param name="File" value="Data//WebLog//LogError//" />

<param name="AppendToFile" value="true" />

<param name="MaxSizeRollBackups" value="100" />
<param name="MaxFileSize" value="1024" />

<param name="StaticLogFileName" value="false" />

<param name="DatePattern" value="yyyyMM/dd".log"" />

<param name="RollingStyle" value="Date" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%n异常时间:%d [%t] %n异常级别:%-5p %n异常位置:[%thread] (%file:%line) %n消息描述:%message%n异常:%exception%n%n " />
layout>
appender>
<appender name="InfoAppender" type="log4net.Appender.RollingFileAppender">

<param name="File" value="Data//WebLog//LogInfo//" />

<param name="AppendToFile" value="true" />

<param name="MaxSizeRollBackups" value="100" />
<param name="MaxFileSize" value="1024" />

<param name="StaticLogFileName" value="false" />

<param name="DatePattern" value="yyyyMM/dd".log"" />

<param name="RollingStyle" value="Date" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%n日志时间:%d [%t] %n日志级别:%-5p %n消息描述:%c [%x] %n%m %n " />
layout>
appender>
log4net>
configuration>

 

2.读取配置
在项目启动文件里加入读取配置的代码,可以说Program.cs或者Global.cs等
如果是直接卸载项目配置文件下,用这种方式读取

log4net.Config.XmlConfigurator.Configure();

如果是单独写的log4net.config文件,则需要把文件路径传给Configure()方法

var fi = new System.IO.FileInfo(path);
log4net.Config.XmlConfigurator.Configure(fi);

3.帮助类

///  
/// LogHelper的摘要说明。 
///  
public class LogHelper {
/// 
/// 静态只读实体对象info信息
/// 
public static readonly log4net.ILog Loginfo = log4net.LogManager.GetLogger("loginfo");
/// 
/// 静态只读实体对象error信息
/// 
public static readonly log4net.ILog Logerror = log4net.LogManager.GetLogger("logerror");

/// 
/// 添加info信息
/// 
/// 自定义日志内容说明
public static void WriteLog(string info) {
try {
if (Loginfo.IsInfoEnabled) {
Loginfo.Info(info);
}
} catch { }
}


/// 
/// 添加异常信息
/// 
/// 自定义日志内容说明
/// 异常信息
public static void WriteLog(string info, Exception ex) {
try {
if (Logerror.IsErrorEnabled) {
Logerror.Error(info, ex);
}
} catch { }
}
}

 

你可能感兴趣的:(log4net快速上手)