以独立文件方式配置Log4net

使用log4net已经很久了.但从来没有详情了解log4的参数,及具体使用方法.看了周公的博客后对log4net有了很详细的了解.

周公对log4net已经做了非常详细的解说,这里就不再赘述了.如不了解.还请移步到周公专栏:http://blog.csdn.net/zhoufoxcn/article/details/2220533


周公在讲解log4net时.并没有讲解如何把log4net的配置放在独立的配置文件中;

其实在独立的配置文件中只需要修改几个地方就能完成:

1. 新建一个配置文件,log4net.config配置方法同成web.config或app.config一致;

2.如果windows应用程序请把配置文件设为:复制到输出目录 修改方法:在log4net.config上右击-->属性--->把"复制到输出目录" 值改为true; 

3.在要用到log4的地方命名空间上边加上:[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", Watch = true)]


 到此,日志就行顺利记录了.


具代码如下:


log4net.config配置文件: 可自行修改

<?xml version="1.0"?>
<configuration>
  <configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
  </configSections>
  <!--日志记录组建配置-->
  <log4net>
    <!-- Console部分log输出格式的设定 -->
    <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date [%thread] %-5level %logger %ndc - %message%newline" />
      </layout>
    </appender>
    <!-- 日志文件部分log输出格式的设定 -->
    <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
      <file value="Logs\Log_" />
      <appendToFile value="true" />
      <rollingStyle value="Date" />
      <datePattern value="yyyyMMdd'.txt'" />
      <staticLogFileName value="false" />
      <layout type="log4net.Layout.PatternLayout">
        <header value="------------------------------------------------------------
" />
        <ConversionPattern value="%date [%thread] %-5level %logger [%ndc] - %message%newline" />
      </layout>
    </appender>

    <!-- Setup the root category, add the appenders and set the default level -->
    <root>
      <level value="ALL" />
      <appender-ref ref="ConsoleAppender" />
      <appender-ref ref="RollingLogFileAppender" />
    </root>
  </log4net>
</configuration>

在使用Log4net的地方添加:

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





你可能感兴趣的:(thread,Date,assembly,layout,log4net,newline)