Log4net 每天创建一个文件夹,并在达到最大大小时创建一个新文件
我需要在我的应用程序位置之外创建一个日志目录,并为每个日期创建一个文件夹。我还需要在达到最大大小时创建一个新文件 我正在使用以下代码:Log4net 每天创建一个文件夹,并在达到最大大小时创建一个新文件,log4net,Log4net,我需要在我的应用程序位置之外创建一个日志目录,并为每个日期创建一个文件夹。我还需要在达到最大大小时创建一个新文件 我正在使用以下代码: <log4net> <appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender,log4net"> <file type="log4net.Util.PatternString" value="D:/Logs/EmailS
<log4net>
<appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender,log4net">
<file type="log4net.Util.PatternString" value="D:/Logs/EmailService/"/>
<appendToFile value="true"/>
<rollingStyle value="Size"/>
<datePattern value=".yyyyMMdd\\\\'service.log"/>
<staticLogFileName value="true"/>
<maximumFileSize value="5MB"/>
<maxSizeRollBackups value="20"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%ndc] – %message%newline"/>
</layout>
<lockingModel type="log4net.Appender.FileAppender+MutexLock" />
</appender>
<!-- Setup the root category, add the appenders and set the default level -->
<root>
<level value="DEBUG" />
<appender-ref ref="LogFileAppender" />
</root>
</log4net>
但是,不会创建这些文件。怎么了
更新
以下是完整的代码,连同@stuartd的答案,我们能够创建每个日期的目录:
<log4net>
<appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender,log4net">
<file type="log4net.Util.PatternString" value="D:/Logs/emailservice/%date{yyyyMMdd}/logfile.log"/>
<appendToFile value="true"/>
<rollingStyle value="Composite"/>
<maximumFileSize value="5MB"/>
<maxSizeRollBackups value="20"/>
<datePattern value="yyyyMMdd"/>
<layout type="log4net.Layout.PatternLayout">
<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="WARN" />
<appender-ref ref="LogFileAppender" />
</root>
</log4net>
要按日期和大小滚动,必须在配置中设置
:
复合-根据文件大小和日期滚动文件
我认为您应该在文件模式中使用反斜杠,而不是正斜杠。另外,我认为在datepattern-windows中不应该有前缀