Log4Net的使用
1、log4net.config 文件(将该配置文件放置主程序)
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="log4net" type="System.Configuration.IgnoreSectionHandler" />
</configSections>
<!-- This section contains the log4net configuration settings -->
<log4net>
<!-- Define some output appenders -->
<appender name="rollingFile" type="log4net.Appender.RollingFileAppender">
<param name="File" value="log\\" />
<param name="LockingModel" type="log4net.Appender.FileAppender+MinimalLock" />
<param name="AppendToFile" value="true" />
<param name="RollingStyle" value="Date" />
<!--<param name="DatePattern" value="yyyy.MM.dd" />-->
<param name="DatePattern" value="yyyyMMdd'.log'"/>
<param name="StaticLogFileName" value="false" />
<layout type="log4net.Layout.PatternLayout">
<param name="Header" value="----------------------Begin--------------------------" />
<param name="Footer" value="----------------------End----------------------------
" />
<param name="ConversionPattern" value="%n%-5p %d %m%n" />
<!--<conversionPattern value="[%d]:%n%m%n"></conversionPattern>-->
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<param name="LevelMin" value="Info" />
<param name="LevelMax" value="Fatal" />
</filter>
</appender>
<!-- Setup the root category, add the appenders and set the default priority -->
<root>
<level value="ALL" />
<appender-ref ref="rollingFile" />
</root>
</log4net>
</configuration>
2、添加LogHepler.cs类
public class LogHelper { private static readonly ILog Log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); public static void Debug(Exception ex) { Log.Debug(ex.Message, ex); } public static void Info(Exception ex) { Log.Info(ex.Message, ex); } public static void Warn(Exception ex) { Log.Warn(ex.Message, ex); } public static void Error(Exception ex) { Log.Error(ex.Message, ex); } public static void Fatal(Exception ex) { Log.Fatal(ex.Message, ex); } public static void Info(object message) { Log.Info(message); } }
3、在LogHelper类所在的项目中的AssemblyInfo.cs中添加下面的代码
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", ConfigFileExtension = "config", Watch = true)]
注:如果使用过程中有问题,可以通过下面代码查看log4net配置是否存在问题。(http://logging.apache.org/log4net/release/faq.html#troubleshooting)
if (!log4net.LogManager.GetRepository().Configured) { foreach (log4net.Util.LogLog message in log4net.LogManager.GetRepository().ConfigurationMessages) { Console.WriteLine(message); } }
浙公网安备 33010602011771号