在目前的工作中,一直在接触多线程,那么对于多线程的应用方面就会有诸多的问题,一步步来解析,这次先开展第一个问题:日志方面的管理。

<?xml version="1.0">
<log4net debug="true">
    <!-- OFF, FATAL, ERROR, WARN, INFO, DEBUG, ALL -->
    <!-- Set root logger level to ERROR and its appenders -->
    <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
	  <file value="syslog/application.log"/>
	  <appendToFile value="true" />  
	  <rollingStyle value="Composite"/>
	  <datePattern value="yyyy-MM-dd"/>
	  <maxSizeRollBackups value="10"/>
	  <maximumFileSize value="10MB"/>
	  <!--记录日志写入文件时,不锁定文本文件,防止多线程时不能写Log,官方说线程非安全 -->
	  <lockingModel type="log4net.Appender.FileAppender+MinimalLock"/>
	  <layout type="log4net.Layout.PatternLayout">
		<conversionPattern value="%date [$thread] %-5level %logger -%message%newline"/>
		<param name="Header" value="
		--------------------------------日志记录开始-------------------------
		"/>
		<param name="Footer" value="
		--------------------------------结束-------------------------
		"/>
	  </layout>
	 </appender>
	 <root>
		<level value ="DEBUG"/>
		<appender-ref ref="RollingFileAppender"/>
	 </root>
	 
  </log4net>