我正在尝试将日期添加到我的日志文件名中,并且能够通过遵循我在stackoverflow中找到的一些建议来使其工作。一切正常,但由于某种原因,第一个文件总是附加两次日期。为什么在使用Log4Net时日期附加了两次文件名?
例如,而不是log.2009-02-23.log,我得到log.2009-02-23.log.2009-02-23.log。
我发现它很奇怪和fyi,这是一个非常简单的代码。这不像我在多线程环境中运行它。
我log4net的配置:
<log4net>
<appender name="MyLog" type="log4net.Appender.RollingFileAppender">
<file value="../../Logs/Mylog"/>
<staticLogFileName value="false" />
<appendToFile value="true"/>
<rollingStyle value="Date"/>
<datePattern value=".yyyy-MM-dd.lo\g" />
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%d{DATE} [%t] %-5p %c - %m%n"/>
</layout>
</appender>
<root>
<level value="INFO"/>
<appender-ref ref="MyLog"/>
</root>
</log4net>
任何想法,为什么? 。
编辑:我想加入我在这个测试环境中的信息
- asp.net
- .NET框架2.0
- 在Windows Server 2003 64位Service Pack 2的
- log4net 1.2.10
datePattern标签接受日期和时间格式化的字符串作为值。 “g”是一个有效的日期和时间格式模式(谷歌DateTimeFormatInfo),所以我必须“逃避”它,所以它不会被解释。 – 2009-02-23 23:41:49
你能告诉我更多关于你正在使用的log4net的版本和你环境的其他部分(os,.net版本等)。我从来没有遇到过不得不从日志中逃脱的问题。 – olle 2009-02-24 00:48:33
- Windows Server 2003 x64 Service Pack 2 - .NET Framework 2.0 - log4net 1.2.10 关于必须转义g,请查看我对devinb的评论。 – 2009-02-24 18:26:14