Log4Net没有创建.txt文件?

时间:2017-02-28 15:44:18

标签: c# .net logging configuration log4net

这是我第一次尝试登录,我研究了类似的问题,但似乎无法弄清楚我的情况,可能是因为我没有收到任何错误。

我正在尝试使用Log4Net来创建.txt文件。我没有web.config或app.config,所以我创建了自己的配置文件来设置Log4Net(通过研究,我发现我应该能够做到这一点)。配置文件如下:

Log4Net.config

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,  log4net"/>
</configSections>
<log4net debug="true">
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
  <file value="C:\myFolder\TestLog.txt" />//******Nothing Is Being Created Here****
  <appendToFile value="true" />
  <rollingStyle value="Size" />
  <maxSizeRollBackups value="10" />
  <maximumFileSize value="10MB" />
  <staticLogFileName value="true" />
  <layout type="log4net.Layout.PatternLayout">
    <conversionPattern value="%date [%thread] %level %logger - %message%newline" />
  </layout>
</appender>

<root>
  <level value="DEBUG" />
  <appender-ref ref="RollingLogFileAppender" />
</root>
</log4net>
</configuration> 

在我的AssemblyInfo.cs

[assembly: log4net.Config.XmlConfigurator(ConfigFile =
            "Log4Net.config", Watch = true)] 

调用记录器

....
private static readonly ILog logger = LogManager.GetLogger("ExportLogger");
....
 log4net.Config.XmlConfigurator.Configure();//I know this shouldnt be done here, just testing
 logger.Debug("Successfully logged something");

上面的代码都运行没有错误,所以我不确定我的错误在哪里。我怀疑我的配置设置不正确。任何人都可以看到我做错了什么以及为什么没有创建.txt文件?

1 个答案:

答案 0 :(得分:0)

属性中的错误:

[assembly: log4net.Config.XmlConfigurator(ConfigFile =
        "Log4Net.config", Watch = true)] 

您定义了配置文件,但您正在使用app.config进行配置。

这将解决您的问题:

[assembly: log4net.Config.XmlConfigurator()]