Log4Net RollingFileAppender 在 Win8/VS2013 中未提供自定义属性

本文关键字:自定义属性 VS2013 RollingFileAppender Win8 Log4Net | 更新日期: 2023-09-27 18:36:17

我正在使用Win7上的Visual Studio 2010在Log4Net中创建自定义属性,它能够使用正确的属性很好地创建所有内容。但是,如果我尝试在Win8和Visual Studio 2013上运行相同的程序,它确实会创建日志文件,但没有自定义属性。

我没有编辑任何东西,同样的事情在 WIn7 中工作,但在 Win8 中不起作用。

我不知道这两种环境发生了什么变化。谁能提示要寻找什么?

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="log4net"     type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
  </configSections>
  <log4net>
  <appender name="CsvFileAppender" type="log4net.Appender.RollingFileAppender,log4net">
    <file type="log4net.Util.PatternString" value="C:'TSAS_DRU_Log'%property{LogName}" />
    <appendToFile value="true"/>
    <maxSizeRollBackups value="10"/>
    <maximumFileSize value="100MB"/>
    <staticLogFileName value="true"/>
    <layout type="TSAS_DRU_app.CsvPatternLayout, TSAS_DRU_app">
    </layout>
  </appender>
  <root>
    <level value="DEBUG" />
    <appender-ref ref="CsvFileAppender" />
  </root>
</log4net>
  </configuration>

更新:我在代码中设置属性如下,该属性在 WIn7 中正常工作,但在 Win8 中无法正常工作,我刚刚将 Visual Studio 更新为 2013 年和 2010 版:

string LogName = "TSAS_DRU_Log_" + date + ".csv";
    log4net.GlobalContext.Properties["LogName"] = LogName;

Log4Net RollingFileAppender 在 Win8/VS2013 中未提供自定义属性

好的,它终于解决了,问题出在Win8机器的区域设置上,这导致日期格式更改,因此带有静态部分的日志文件的完整名称以及日期没有到来。

感谢log4net

日志文件,它得到了解决,也感谢Psenner,他是log4net的处理程序之一,提供了见解。