小智 196
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
<lockingModel type="log4net.Appender.FileAppender+MinimalLock"/>
<file value="logs\" />
<datePattern value="dd.MM.yyyy'.log'" />
<staticLogFileName value="false" />
<appendToFile value="true" />
<rollingStyle value="Composite" />
<maxSizeRollBackups value="10" />
<maximumFileSize value="5MB" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
</layout>
</appender>
Run Code Online (Sandbox Code Playgroud)
Mun*_*Mun 99
在Log4net配置文件中,将以下参数与RollingFileAppender一起使用:
<param name="DatePattern" value="dd.MM.yyyy'.log'" />
Run Code Online (Sandbox Code Playgroud)
小智 31
对于RollingLogFileAppender,您还需要以下元素和值:
<rollingStyle value="Date" />
<staticLogFileName value="false" />
Run Code Online (Sandbox Code Playgroud)
小智 21
使用Log4Net 1.2.13,我们使用以下配置设置来允许文件名中的日期时间.
<file type="log4net.Util.PatternString" value="E:/logname-%utcdate{yyyy-MM-dd}.txt" />
哪个将提供以下约定的文件: logname-2015-04-17.txt
有了它,通常最好有以下内容,以确保您每天持有1个日志.
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
Run Code Online (Sandbox Code Playgroud)
如果文件大小是一个问题,以下允许500个文件,大小为5MB,直到新的一天产生.CountDirection允许不再是最新的文件的升序或降序编号.
<maxSizeRollBackups value="500" />
<maximumFileSize value="5MB" />
<rollingStyle value="Composite" />
<datePattern value="yyyyMMdd" />
<CountDirection value="1"/>
<staticLogFileName value="true" />
Run Code Online (Sandbox Code Playgroud)
Nja*_*jal 16
我最终使用(注意'.log'文件名和'myfilename_'周围的单引号):
<rollingStyle value="Date" />
<datePattern value="'myfilename_'yyyy-MM-dd"/>
<preserveLogFileNameExtension value="true" />
<staticLogFileName value="false" />
<file type="log4net.Util.PatternString" value="c:\\Logs\\.log" />
Run Code Online (Sandbox Code Playgroud)
这给了我:
myfilename_2015-09-22.log
myfilename_2015-09-23.log
.
.
Run Code Online (Sandbox Code Playgroud)
我已经尝试了所有的答案,但总有一些东西丢失了,而且我没有按预期运作.
然后我用每个答案中给出的提示进行了一些实验,并通过以下设置成功:
<appender name="RollingActivityLog" type="log4net.Appender.RollingFileAppender">
<file type="log4net.Util.PatternString" value="C:\temp\LOG4NET_Sample_Activity.log" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<staticLogFileName value="false" />
<preserveLogFileNameExtension value="true" />
<datePattern value="-yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %-5level - %message%newline" />
</layout>
</appender>
Run Code Online (Sandbox Code Playgroud)
其他参数组合的问题是最新文件没有时间模式,或者附加时间模式,因为每天.log20171215创建一个新文件时间(和一个新文件类型!) - 或者两个问题都出现了.
现在使用此设置,您将获得以下文件:
LOG4NET_Sample_Activity-20171215.log
这就是我想要的.总结一下:
不要将日期模式放在<file value=...属性中,只需在中定义它即可datePattern.
确保将preserveLogFileNameExtension value属性设置为true.
将staticLogFileName属性值设置为false.
保留文件扩展名:
<log4net>
<root>
<level value="DEBUG"/>
<appender-ref ref="RollingLogFileAppender"/>
</root>
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
<file type="log4net.Util.PatternString" value="D:\\LogFolder\\%date{yyyyMM}\\SchT.log" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<maximumFileSize value="30MB" />
<staticLogFileName value="true" />
<preserveLogFileNameExtension value="true"/>
<datePattern value="ddMMyyyy" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
</log4net>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
120296 次 |
| 最近记录: |