c # log4net use

c # log4net use

Need to use in listview or textbox winform program displays the log, and the log file is also recorded in a separate log file txt

The Internet to find an example, the display can be achieved in the textbox, but there has been no txt print text log file. The reason is that log4net configuration files need to debug directory and need to make sure is the latest modification of the content.

Need to confirm key steps are as follows:

  1. Correct reference log4net, best to select the corresponding version nuget management tools inside.
  2. log4net.dll need to debug directory
  3. Profile log4net.config need to debug directory
  4. AssemblyInfo.cs文件中 添加:[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", Watch = true)]

Key configuration files are as follows

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <!--在配置选项中加入log4net的引用-->
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
  </configSections>
  
  <log4net>
    <appender  name="LogFile" type="log4net.Appender.FileAppender" >
      <!--日志路径-->
      <param name= "File" value= "D://sss.txt"/>
      <!--是否是向文件中追加日志-->
      <param name= "AppendToFile" value= "true"/>
      <!--log保留天数-->
      <param name= "MaxSizeRollBackups" value= "10"/>
      <!--日志文件名是否是固定不变的-->
      <param name= "StaticLogFileName" value= "false"/>
      <!--日志文件名格式为:2008-08-31.log-->
      <param name= "DatePattern" value= "yyyy-MM-dd".log""/>
      <!--日志根据日期滚动-->
      <param name= "RollingStyle" value= "Date"/>
      <!--不要使用小数,否则会一直写入当前日志-->
      <maximumFileSize value="2MB"/>
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss} --%-5p-- %m%n" />
      </layout>
    </appender>
    <appender>
      <!--一个配置文件可以有很多appender,一个appender节就相当于一个日志输出介质或方法。-->
    </appender>
    <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
      </layout>
    </appender>
    <logger name="logApp">
      <!--定义logger对象的名字为logApp,以方便在代码中使用logger-->
      <!--配置项可以不配置-->
      <level value="ALL" />
      <!--定义输出的信息等级为所有其中包括Fatal.Error.Warn.Info.Debug-->
    </logger>
    <root>
      <!--定义日志输出的方式和等级-->
      <level value="Info" />
      <appender-ref ref="LogFile" />
      <!--选择了文件输出,注意粗体部分对应的名称-->
      <appender-ref ref="ConsoleAppender" />
    </root>
  </log4net>
</configuration>

Guess you like

Origin www.cnblogs.com/falcon-fei/p/11060142.html