<log4net>
<root>
<debug value="false" />
<level value="ALL" />
<appender-ref ref="LogFileAppender" />
</root>
<appender name="LogFileAppender" type="log4net.Appender.FileAppender">
<!--日志文件路径-->
<!--相对路径,在项目的根目录下-->
<!--以最后一个路径为准-->
<param name="File" value="Upload\\Logs\\Log4Net.log"/>
<appendToFile value="true" />
<!--可以为:Once|Size|Date|Composite-->
<!--Composite为Size和Date的组合-->
<rollingStyle value="composite" />
<!--日志最大个数,都是最新的-->
<!--rollingStyle节点为Date时,该节点不起作用-->
<!--rollingStyle节点为Size时,只能有value个日志-->
<!--rollingStyle节点为Composite时,每天有value个日志-->
<maxSizeRollBackups value="10" />
<!--当备份文件时,为文件名加的后缀-->
<!--后缀为*.txt时,例:AX.txt_2008-07-24.PxP 应该是程序上的一个bug-->
<!--后缀为*.TXT时,例:AX.txt_2008-07-25.TXT-->
<datePattern value="_yyyy-MM-dd.log" />
<!--可用的单位:KB|MB|GB-->
<!--不要使用小数,否则会一直写入当前日志-->
<maximumFileSize value="100KB" />
<!--置为true,当前最新日志文件名永远为file节中的名字-->
<staticLogFileName value="false" />
<layout type="log4net.Layout.PatternLayout">
<!--输出样式-->
<param name="ConversionPattern" value="Data:%d%nthread:%t%nLevel:%p%nClass:%c%nFile:%F%nLine:%L%nMessage:%m%n%n"/>
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<param name="LevelMin" value="WARN" />
<param name="LevelMax" value="FATAL" />
</filter>
</appender>
</log4net>我想实现
1:日志的文件最大大小为100KB
2:第天分别存在为一个日志文件如今天
Log4Net20100910.log
明天
Log4Net20100911.log
如果文件超过100KB的话新建一文件
Log4Net20100910_1.log
Log4Net20100910_2.log
这样下去那log4.net的XML如何配置才能实现我上面的要求呢?谢谢
<log4net>
<root>
<debug value="false" />
<level value="ALL" />
<appender-ref ref="LogFileAppender" />
</root>
<appender name="LogFileAppender" type="log4net.Appender.FileAppender">
<!--日志文件路径-->
<!--相对路径,在项目的根目录下-->
<!--以最后一个路径为准-->
<File value="Upload/Logs/"/>
<appendToFile value="true" />
<!--可以为:Once|Size|Date|Composite-->
<!--Composite为Size和Date的组合-->
<RollingStyle value="Date"/>
<!--当备份文件时,为文件名加的后缀-->
<!--后缀为*.txt时,例:AX.txt_2008-07-24.PxP 应该是程序上的一个bug-->
<!--后缀为*.TXT时,例:AX.txt_2008-07-25.TXT-->
<DatePattern value=""Logs_"yyyyMMdd".log"" />
<!--置为true,当前最新日志文件名永远为file节中的名字-->
<staticLogFileName value="false" />
<layout type="log4net.Layout.PatternLayout">
<!--输出样式-->
<param name="ConversionPattern" value="Data:%d%nthread:%t%nLevel:%p%nClass:%c%nFile:%F%nLine:%L%nMessage:%m%n%n"/>
<param name="Header" value=" ----------------------header-------------------------- " />
<param name="Footer" value=" ----------------------footer-------------------------- " />
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<param name="LevelMin" value="WARN" />
<param name="LevelMax" value="FATAL" />
</filter>
</appender>
</log4net>我改成上面,连日志文件输出都没有了
<File value="Upload/Logs/"/>
=》
<File value="Upload/Logs/logs.log"/>
这样的话就有日志,但不是按时间而是就是这个名字我上面有哪设置出错了呢?
改成<appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender">
加上<param name="MaxSizeRollBackups" value="100" />就可以了如:<appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender">
<param name="AppendToFile" value="true" />
<param name="MaxSizeRollBackups" value="100" />
<param name="MaximumFileSize" value="1MB" />
<param name="RollingStyle" value="Size" />
<param name="StaticLogFileName" value="false"/>
<file type="log4net.Util.PatternString" value="d:\Log\Applog_%date{yyyyMMdd}.txt" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
</layout>
</appender>