c# log4net配置

到http://logging.apache.org/log4net/download_log4net.cgi下载log4net配置文件。


选择一项进行下载,将下载后的文件进行解压缩,打开og4net-1.2.13-bin-newkey\log4net-1.2.13\bin\net\4.0\release文件夹。


将log4net.dll复制到代码目录下,并且将其引用。


在项目Properties文件夹下有一个AssemblyInfo.cs文件,打开这个文件

在尾部添加一行[assembly:log4net.Config.DOMConfigurator(Watch=true)]

在app.config中添加如下内容:

<configSections>
    <section name="log4net" type="System.Configuration.IgnoreSectionHandler"/>
  </configSections>
  <log4net>

    <!--使用Rolling方式记录日志按照日来记录日志-->
    <appender name="RunLog" type="log4net.Appender.RollingFileAppender">
      <!--文件名,可以相对路径,也可以绝对路径,这里只给定了文件夹-->
      <file value="log\\runtime\\"/>
      <!--最小锁定模型以允许多个进程可以写入同一个文件,解决文件独占问题-->
      <lockingModel type="log4net.Appender.FileAppender+MinimalLock"/>
      <!--是否增加文件-->
      <appendToFile value="true"/>
      <!--日志追加类型,Date为按日期增加文件,Size为按大小-->
      <rollingStyle value="Date"/>
      <!--文件命名格式,非日期参数化要进行转义,如自定义文件后缀-->
      <datePattern value="yyyyMM\\yyyy-MM-dd".log""/>
      <!--是否固定文件名-->
      <staticLogFileName value="false"/>
      <!--内容布局-->
      <layout type="log4net.Layout.PatternLayout">
        <!--头部-->
        <header value="----------------------header--------------------------
"/>
        <!--结尾-->
        <footer value="----------------------footer--------------------------
"/>
        <!--输出格式化-->
        <conversionPattern value="当前时间:%d [%p] %m %n"/>
      </layout>
      <!--过滤器-->
      <filter type="log4net.Filter.LevelRangeFilter">
        <!--只接受最小等级与最大等级之间的日志输出,这里只接受INFO级别的输出-->
        <param name="LevelMin" value="INFO"/>
        <param name="LevelMax" value="INFO"/>
      </filter>
    </appender>

    <appender name="ErrorLog" type="log4net.Appender.RollingFileAppender">
      <file value="log\\error\\"/>
      <appendToFile value="true"/>
      <rollingStyle value="Date"/>
      <datePattern value="yyyyMM\\yyyy-MM-dd".log""/>
      <staticLogFileName value="false"/>
      <layout type="log4net.Layout.PatternLayout">
        <header value="----------------------header--------------------------
"/>
        <footer value="----------------------footer--------------------------
"/>
        <conversionPattern value="当前时间:%d 错误类型:[%p]  信息:%m  所在类:%F 所在行:%L %n"/>
      </layout>
      <filter type="log4net.Filter.LevelRangeFilter">
        <!--只接受最小等级与最大等级之间的日志输出,其他的被过滤,这里接受WARN(警告),ERROR(错误),FATAL(致命)级别的输出-->
        <param name="LevelMin" value="WARN"/>
        <param name="LevelMax" value="FATAL"/>
      </filter>
    </appender>

    <!--定义日志的输出媒介-->
    <root>
      <!--RollingFileAppender事件日志-->
      <appender-ref ref="RunLog"/>
      <appender-ref ref="ErrorLog"/>
    </root>

  </log4net>
在项目中可以用以下方式使用log4net

最终写入的日志如下:





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值