2017-02-18 104 views
1

日志文件没有被创建, 使用下面的调用来获取记录器和配置文件。 是否需要为文件提供完整路径?log4net日志文件未在C#中创建

private static readonly log4net.ILog logger = log4net.LogManager.GetLogger 
(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); 

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
    <configSections> 
     <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=1b44e1d426115821" requirePermission="false"/> 
    </configSections> 

    <!-- Log4net Logging Setup --> 
    <log4net> 
     <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender"> 
      <file value="log.txt" /> 
      <appendToFile value="true" /> 
      <rollingStyle value="Size" /> 
      <maxSizeRollBackups value="50" /> 
      <maximumFileSize value="50MB" /> 
      <staticLogFileName value="true" /> 
      <layout type="log4net.Layout.PatternLayout"> 
       <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" /> 
      </layout> 
     </appender> 
     <root> 
      <level value="ALL" /> 
      <appender-ref ref="RollingFileAppender" /> 
     </root> 
    </log4net> 
</configuration> 
+0

不,但具有应用程序用户(或服务帐户)对文件夹的写入权限? –

回答

0

在AssemblyInfo.cs中添加以下行后,可以看到日志文件得到创建和日志来了。 [assembly:log4net.Config.XmlConfigurator(Watch = true)]

0

请问您的代码调用

log4net.Config.XmlConfigurator.Configure(); 

上启动?

<root>部分我用了priority,不level

<root> 
     <priority value="ALL" /> 
     <appender-ref ref="LogFileAppender" /> 
    </root> 

(显然,这不是问题https://stackoverflow.com/a/24188507/21336