我希望我的日志文件看起来像这样: 2009-02-13.log
但问题是我似乎找不到任何方法来添加.log扩展名。
我尝试了很多东西,但没有任何帮助。 这就是我迄今为止所拥有的:
<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="Logs/Log4Net/.log"/>
<appendToFile value="true"/>
<rollingStyle value="Date"/>
<datePattern value="yyyy-MM-dd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline"/>
</layout>
</appender>
答案 0 :(得分:110)
其他答案逃避“log”中的“g”,因为“g”是datePattern中的特殊字符。这没有错,但我更喜欢将整个非日期字符集包装在单引号中,如下所示:
<datePattern value="yyyy-MM-dd'.log'" />
这给出了相同的结果,但我更容易管理。这样,我就不必回忆起datePattern特有的特定字符(列表很长且多变)。如果我忘记了一个字符,那么我就不会冒险使用我的文件名;他们都很好地逃脱了。
答案 1 :(得分:54)
尝试将.log扩展名添加到日期模式中,然后将其从文件属性中删除。
<datePattern value="yyyy-MM-dd.lo\g"/>
...
<staticLogFileName value="false" />
答案 2 :(得分:17)
log4net现在还提供了一个PreserveLogFileNameExtension
属性,可以将.log扩展名强制复制到复合文件名的末尾(包括日期模式和/或大小序列号):
<file value="LogFiles/.log"/>
<preserveLogFileNameExtension value="true" />
<datePattern value="yyyy-MM-dd" />
答案 3 :(得分:8)
将“.lo \ g”添加到日期模式的末尾
答案 4 :(得分:4)
这是我的日志文件xml config。 日志文件的路径位于“file”标记
中这将在我网站的路径文件夹中的“LogFiles”文件夹下创建一个日志文件“2012-11-22.log”。
注意:请确保该文件夹首先存在!
<?xml version="1.0"?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
</configSections>
<log4net>
<root>
<level value="INFO"/>
<appender-ref ref="RollingFileAppender"/>
</root>
<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="LogFiles/"/>
<appendToFile value="true"/>
<rollingStyle value="Date"/>
<maxSizeRollBackups value="5"/>
<maximumFileSize value="10MB"/>
<datePattern value="yyyy-MM-dd'.log'" />
<staticLogFileName value="false"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %level %logger - %message%newline%exception"/>
</layout>
</appender>
</log4net>
</configuration>