版权声明:本文为楠之枫雪的原创文章,未经博主允许不得转载。 https://blog.csdn.net/u014614038/article/details/89922498
1.下载log4net
http://logging.apache.org/log4net/download_log4net.cgi
2.解压,找到对应的net版本
3.添加引用
3.在Web项目根目录下创建log4net.config配置文件。
通过添加–新建项
4.配置文件log4new.config XML代码如下:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.5.2" />
<httpRuntime targetFramework="4.5.2" />
</system.web>
<configSections>
<!--添加配置节点-->
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
</configSections>
<log4net>
<!--Info 日志-->
<appender name="InfoAppender" type="log4net.Appender.RollingFileAppender">
<file value="App_Data\\Logs\\" />
<appendToFile value="true" />
<rollingStyle value="Composite" />
<datePattern value="yyyy-MM-dd\\'info.log'" />
<staticLogFileName value="false" />
<param name="MaxSizeRollBackups" value="100"/>
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<param name="Encoding" value="utf-8" />
<maximumFileSize value="5MB"/>
<param name="PreserveLogFileNameExtension" value="true"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%newline %nDATE: %date %nTHREAD: [%thread] %n%message %newline %n" />
</layout>
</appender>
<!--Debug 日志-->
<appender name="DebugAppender" type="log4net.Appender.RollingFileAppender">
<file value="App_Data\\Logs\\" />
<appendToFile value="true" />
<rollingStyle value="Composite" />
<datePattern value="yyyy-MM-dd\\'debug.log'" />
<staticLogFileName value="false" />
<param name="MaxSizeRollBackups" value="100" />
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<param name="Encoding" value="utf-8" />
<maximumFileSize value="5MB"/>
<param name="PreserveLogFileNameExtension" value="true"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%newline %nDATE: %date %nTHREAD: [%thread] %n%message %newline %n" />
</layout>
</appender>
<!--Warn 日志-->
<appender name="WarnAppender" type="log4net.Appender.RollingFileAppender">
<file value="App_Data\\Logs\\" />
<appendToFile value="true" />
<rollingStyle value="Composite" />
<datePattern value="yyyy-MM-dd\\'warn.log'" />
<staticLogFileName value="false" />
<param name="MaxSizeRollBackups" value="100" />
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<param name="Encoding" value="utf-8" />
<maximumFileSize value="5MB"/>
<param name="PreserveLogFileNameExtension" value="true"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%newline %nDATE: %date %nTHREAD: [%thread] %n%message %newline %n" />
</layout>
</appender>
<!--Error 日志-->
<appender name="ErrorAppender" type="log4net.Appender.RollingFileAppender">
<file value="App_Data\\Logs\\" />
<appendToFile value="true" />
<rollingStyle value="Composite" />
<datePattern value="yyyy-MM-dd\\'error.log'" />
<staticLogFileName value="false" />
<param name="MaxSizeRollBackups" value="100" />
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<param name="Encoding" value="utf-8" />
<maximumFileSize value="5MB"/>
<param name="PreserveLogFileNameExtension" value="true"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%newline %nDATE: %date %nTHREAD: [%thread] level: %-5level %n%message %newline %n" />
</layout>
</appender>
<logger name="logerror">
<level value="ERROR" />
<appender-ref ref="ErrorAppender" />
</logger>
<logger name="logwarn">
<level value="WARN" />
<appender-ref ref="WarnAppender" />
</logger>
<logger name="loginfo">
<level value="INFO" />
<appender-ref ref="InfoAppender" />
</logger>
<logger name="logdebug">
<level value="DEBUG" />
<appender-ref ref="DebugAppender" />
</logger>
<logger name="logmonitor">
<level value="Monitor" />
<appender-ref ref="MonitorAppender" />
</logger>
<logger name="logsocketsend">
<level value="INFO" />
<appender-ref ref="SocketSendAppender" />
</logger>
<logger name="logsocketrec">
<level value="INFO" />
<appender-ref ref="SocketRecAppender" />
</logger>
<logger name="logweather">
<level value="INFO" />
<appender-ref ref="WeatherAppender" />
</logger>
<logger name="logcheckin">
<level value="INFO" />
<appender-ref ref="CheckInAppender" />
</logger>
</log4net>
</configuration>
5.初始化时设置自动加载配置log4Net
public class WebApiApplication : System.Web.HttpApplication
{
protected void Application_Start()
{
log4net.Config.XmlConfigurator.ConfigureAndWatch(new FileInfo(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "log4net.config")));
}
}
6.使用log:
private static readonly ILog loginfo = LogManager.GetLogger("loginfo");
loginfo.Info("from server log test");