【9】log4net 实例

来源:互联网 发布:淘宝如何销售农产品 编辑:程序博客网 时间:2024/05/17 02:20

一.创建项目并添加nuget:

Install-Package log4net


二.添加配置文件

<configuration>  <configSections>    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />  </configSections>  <log4net>    <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">      <!--日志文件名开头-->      <file value="D:\Log\log_"/>      <!--多线程时采用最小锁定-->      <lockingModel type="log4net.Appender.FileAppender+MinimalLock"/>      <!--日期的格式,每天换一个文件记录,如不设置则永远只记录一天的日志,需设置-->      <datePattern value="yyyyMMdd_HH".log""/>      <!--是否追加到文件,默认为true,通常无需设置-->      <appendToFile value="true"/>      <!--按照何种方式产生多个日志文件(日期[Date],文件大小[Size],混合[Composite])-->      <RollingStyle value="Composite"/>      <!--每天记录的日志文件个数,与maximumFileSize配合使用-->      <MaxSizeRollBackups value="100"/>      <!--每个日志文件的最大大小-->      <!--可用的单位:KB|MB|GB-->      <!--不要使用小数,否则会一直写入当前日志-->      <maximumFileSize value="2MB"/>      <!--是否只写到一个文件中-->       <staticLogFileName value="false" />      <!--日志格式-->      <layout type="log4net.Layout.PatternLayout">        <conversionPattern value="%date [%t]%-5p %c - %m%n"/>      </layout>    </appender>    <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">      <layout type="log4net.Layout.PatternLayout">        <conversionPattern value="%date [%t]%-5p %c - %m%n" />      </layout>    </appender>    <root>      <!--控制级别,由低到高: ALL|DEBUG|INFO|WARN|ERROR|FATAL|OFF-->      <!--比如定义级别为INFO,则INFO级别向下的级别,比如DEBUG日志将不会被记录-->      <!--如果没有定义LEVEL的值,则缺省为DEBUG-->      <level value="ALL"/>      <appender-ref ref="RollingFileAppender"/>      <appender-ref ref="ConsoleAppender"/>    </root>  </log4net></configuration>

注:若要appender生效,需要在root节点中添加appender-ref。

此例中RollingFileAppender为将日志以回滚文件的形式写到文件中

ConsoleAppender为将日志输出到控制台


三.main函数添加代码

static void Main(string[] args){log4net.Config.XmlConfigurator.Configure();ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);logger.Info("记录日志");Console.ReadLine();}

如果不加log4net.Config.XmlConfigurator.Configure();也可在AssemblyInfo.cs文件中添加

[assembly: log4net.Config.XmlConfigurator(ConfigFile = "App.config", Watch = true)]

这里需要将App.config文件属性设置问始终复制


四.结果

控制台输出:


文本文件记录日志:



参考资料:

http://blog.csdn.net/pfe_nova/article/details/12225349

http://www.cnblogs.com/zhangchenliang/p/4546352.html



0 0
原创粉丝点击