标签:
1 配置文件log4net_dcs.config
<configuration> <configSections> <section name="log4net" type="System.Configuration.IgnoreSectionHandler"/> </configSections> <appSettings> </appSettings> <log4net> <!--一般信息日志--> <appender name="InfoLog" type="log4net.Appender.RollingFileAppender"> <file value="Log/InfoLog/" /> <appendToFile value="true" /> <rollingStyle value="Date" /> <staticLogFileName value="false" /> <datePattern value="yyyyMMdd".log"" /> <layout type="log4net.Layout.PatternLayout"> <!--输出格式--> <conversionPattern value="%date %-5level %message%newline" /> </layout> <filter type="log4net.Filter.LoggerMatchFilter"> <loggerToMatch value="InfoLog" /> </filter> <filter type="log4net.Filter.DenyAllFilter" /> </appender> <!--系统日志--> <appender name="SysLog" type="log4net.Appender.RollingFileAppender"> <file value="Log/SysLog/" /> <appendToFile value="true" /> <rollingStyle value="Date" /> <staticLogFileName value="false" /> <datePattern value="yyyyMMdd".log"" /> <layout type="log4net.Layout.PatternLayout"> <!--输出格式--> <conversionPattern value="%date %-5level %message%newline" /> </layout> <filter type="log4net.Filter.LoggerMatchFilter"> <loggerToMatch value="SysLog" /> </filter> <filter type="log4net.Filter.DenyAllFilter" /> </appender> <!--通讯服务日志--> <appender name="CommLog" type="log4net.Appender.RollingFileAppender"> <file value="Log/CommLog/" /> <appendToFile value="true" /> <rollingStyle value="Date" /> <staticLogFileName value="false" /> <datePattern value="yyyyMMdd".log"" /> <layout type="log4net.Layout.PatternLayout"> <!--输出格式--> <conversionPattern value="%date %-5level %message%newline" /> </layout> <filter type="log4net.Filter.LoggerMatchFilter"> <loggerToMatch value="CommLog" /> </filter> <filter type="log4net.Filter.DenyAllFilter" /> </appender> <!--第三方应用服务日志--> <appender name="ThirdLog" type="log4net.Appender.RollingFileAppender"> <file value="Log/ThirdLog/" /> <appendToFile value="true" /> <rollingStyle value="Date" /> <staticLogFileName value="false" /> <datePattern value="yyyyMMdd".log"" /> <layout type="log4net.Layout.PatternLayout"> <!--输出格式--> <conversionPattern value="%date %-5level %message%newline" /> </layout> <filter type="log4net.Filter.LoggerMatchFilter"> <loggerToMatch value="ThirdLog" /> </filter> <filter type="log4net.Filter.DenyAllFilter" /> </appender> <!--数据持久化日志--> <appender name="PersistenceLog" type="log4net.Appender.RollingFileAppender"> <file value="Log/PersistenceLog/" /> <appendToFile value="true" /> <rollingStyle value="Date" /> <staticLogFileName value="false" /> <datePattern value="yyyyMMdd".log"" /> <layout type="log4net.Layout.PatternLayout"> <!--输出格式--> <conversionPattern value="%date %-5level %message%newline" /> </layout> <filter type="log4net.Filter.LoggerMatchFilter"> <loggerToMatch value="PersistenceLog" /> </filter> <filter type="log4net.Filter.DenyAllFilter" /> </appender> <root> <level value="ALL"/> <appender-ref ref="InfoLog"/> <appender-ref ref="SysLog"/> <appender-ref ref="CommLog"/> <appender-ref ref="ThirdLog"/> <appender-ref ref="PersistenceLog"/> </root> </log4net> </configuration>
2 在AssemblyInfo.cs文件中添加
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net_dcs.config", Watch = true)]
3添加帮助类文件C_LogWriter.cs
/// <summary> /// 日志等级 /// </summary> enum LogLevel { Error, Debug, Warning, Info } /// <summary> /// 日志类型 /// </summary> enum LogType { InfoLog, SysLog, CommLog, ThirdLog, PersistenceLog } /// <summary> /// 日志记录服务 /// </summary> class C_LogWriter { /// <summary> /// 日志接口 /// </summary> private log4net.ILog m_Log; public void Init(LogType _LogType) { string s = _LogType.ToString(); m_Log = log4net.LogManager.GetLogger(s); } /// <summary> /// 输出错误级别日志 /// </summary> /// <param name="message">输出的消息</param> public void Error(string message) { //记录日志 WriteLog(LogLevel.Error, message); } /// <summary> /// 输出警告级别日志 /// </summary> /// <param name="message">输出的消息</param> public void Warning(string message) { //记录日志 WriteLog(LogLevel.Warning, message); } /// <summary> /// 输出信息级别日志 /// </summary> /// <param name="message">输出的消息</param> public void Info(string message) { //记录日志 WriteLog(LogLevel.Info, message); } /// <summary> /// 输出调试级别日志 /// </summary> /// <param name="message">输出的消息</param> public void Debug(string message) { //记录日志 WriteLog(LogLevel.Debug, message); } /// <summary> /// 记录系统日志 /// </summary> /// <param name="logLevel">日志级别</param> /// <param name="message">输出的消息</param> private void WriteLog(LogLevel logLevel, string message) { switch (logLevel) { case LogLevel.Debug: m_Log.Debug(message); break; case LogLevel.Error: m_Log.Error(message); break; case LogLevel.Info: m_Log.Info(message); break; case LogLevel.Warning: m_Log.Warn(message); break; } } }
4 调用
C_LogWriter log = new C_LogWriter(); log.Init(LogType.CommLog); log.Warning("前苏联,。"); log = new C_LogWriter(); log.Init(LogType.InfoLog); log.Warning("前。"); log = new C_LogWriter(); log.Init(LogType.PersistenceLog); log.Warning("年开。"); log = new C_LogWriter(); log.Init(LogType.SysLog); log.Warning("前年开。"); log = new C_LogWriter(); log.Init(LogType.ThirdLog); log.Warning("前苏联军队在1值。");
标签:
原文地址:http://www.cnblogs.com/cdaq/p/5052055.html