c# – 使用Windows安装程序部署项目时,log4net不会生成日志文件

当我登录我的开发环境时没有问题但是当我使用Windows安装程序部署时,没有生成日志文件:

<log4net>
    <root>
      <level value="ALL"/>
      <appender-ref ref="LogFileAppender"/>
    </root>
    <appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender">
      <lockingModel type="log4net.Appender.FileAppender+MinimalLock"/>
      <param name="File" value="C:\Logs\log-file.txt"/>
      <param name="AppendToFile" value="true"/>
      <rollingStyle value="Size"/>
      <maxSizeRollBackups value="10"/>
      <maximumFileSize value="10MB"/>
      <staticLogFileName value="true"/>
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%date [%thread] %-5level %logger [%C{1}.%M] - %message%newline"/>
      </layout>
    </appender>
  </log4net>

我读到它可能找不到app.config但是我怎么告诉它在哪里找到它?

解决方法:

问题是在安装dll后,log4net无法在运行时找到配置文件.修正了建议here.最后,我的解决方案看起来像这样:

FileInfo fi = new FileInfo(AppDomain.CurrentDomain.BaseDirectory + "Assembly.dll.config");
log4net.Config.XmlConfigurator.Configure(fi);
_log.Info("Hello logging...");

感谢您的所有投入!

上一篇:log4net日志记录


下一篇:asp.net 开发注意的几点