{
/// <summary>
/// 记录登陆入单客户
/// </summary>
/// <param name="dateTime"></param>
/// <param name="billOperator"></param>
// int LogOperator(DateTime dateTime, BillOperator billOperator, EnumLogOperatorType logOperatorType);
void Fatal(object message, Exception exception);
void Error(object message, Exception exception);
void Warn(object message, Exception exception);
void Info(object message, Exception exception);
void Debug(object message, Exception exception);
}
public class BillLog : IBillLog
{
private static ILog m_log = LogManager.GetLogger(typeof(BillLog));
public BillLog() { }
#region 委托Log4net来实现不同日志级别打印
void IBillLog.Fatal(object message, Exception exception)
{
m_log.Fatal(message, exception);
}
void IBillLog.Error(object message, Exception exception)
{
m_log.Error(message, exception);
}
void IBillLog.Warn(object message, Exception exception)
{
m_log.Warn(message, exception);
}
void IBillLog.Info(object message, Exception exception)
{
m_log.Info(message, exception);
}
void IBillLog.Debug(object message, Exception exception)
{
m_log.Debug(message, exception);
}
#endregion
}
AssemblyInfo.cs中增加
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", Watch = true)]
log4net.config文件配置
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="log4net"
type="log4net.Config.Log4NetConfigurationSectionHandler,
log4net-net-1.0"
/>
</configSections>
<log4net>
<root>
<level value="ALL" />
<appender-ref ref="RollingFileAppenderFATAL" />
<appender-ref ref="RollingFileAppenderERROR" />
<appender-ref ref="RollingFileAppenderWARN" />
<appender-ref ref="RollingFileAppenderINFO" />
<appender-ref ref="RollingFileAppenderDEBUG" />
</root>
<!--ALL/FATAL > ERROR > WARN > INFO > DEBUG/OFF-->
<appender name="RollingFileAppenderFATAL" type="log4net.Appender.RollingFileAppender" >
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<file value=".\\FatalDir\\Fatal"/>
<staticLogFileName value="false"/>
<appendToFile value="true"/>
<rollingStyle value="Composite"/>
<datePattern value="_yyyy.MM.dd".log""/>
<maxSizeRollBackups value="20" />
<maximumFileSize value="1024KB"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline"/>
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<param name="LevelMin" value="FATAL" />
<param name="LevelMax" value="FATAL" />
</filter>
</appender>
<appender name="RollingFileAppenderERROR" type="log4net.Appender.RollingFileAppender" >
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<file value=".\\ErrorDir\\Error"/>
<staticLogFileName value="false"/>
<appendToFile value="true"/>
<rollingStyle value="Composite"/>
<datePattern value="_yyyy.MM.dd".log""/>
<maxSizeRollBackups value="20" />
<maximumFileSize value="1024KB"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline"/>
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<param name="LevelMin" value="ERROR" />
<param name="LevelMax" value="ERROR" />
</filter>
</appender>
<appender name="RollingFileAppenderWARN" type="log4net.Appender.RollingFileAppender" >
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<file value=".\\WarnDir\\Warn"/>
<staticLogFileName value="false"/>
<appendToFile value="true"/>
<rollingStyle value="Composite"/>
<datePattern value="_yyyy.MM.dd".log""/>
<maxSizeRollBackups value="20" />
<maximumFileSize value="1024KB"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline"/>
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<param name="LevelMin" value="WARN" />
<param name="LevelMax" value="WARN" />
</filter>
</appender>
<appender name="RollingFileAppenderINFO" type="log4net.Appender.RollingFileAppender" >
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<file value=".\\InfoDir\\Info"/>
<staticLogFileName value="false"/>
<appendToFile value="true"/>
<rollingStyle value="Composite"/>
<datePattern value="_yyyy.MM.dd".log""/>
<maxSizeRollBackups value="20" />
<maximumFileSize value="1024KB"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline"/>
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<param name="LevelMin" value="INFO" />
<param name="LevelMax" value="INFO" />
</filter>
</appender>
<appender name="RollingFileAppenderDEBUG" type="log4net.Appender.RollingFileAppender" >
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<file value=".\\DebugDir\\Debug"/>
<staticLogFileName value="false"/>
<appendToFile value="true"/>
<rollingStyle value="Composite"/>
<datePattern value="_yyyy.MM.dd".log""/>
<maxSizeRollBackups value="20" />
<maximumFileSize value="1024KB"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline"/>
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<param name="LevelMin" value="DEBUG" />
<param name="LevelMax" value="DEBUG" />
</filter>
</appender>
</log4net>
</configuration>