C# 日志4 Net在发布时不写入

C# 日志4 Net在发布时不写入,c#,.net-core,log4net,publish,C#,.net Core,Log4net,Publish,我在.NETCore2.0上使用log4net,当从VisualStudio运行时,一切都正常,但是当我发布我的应用程序(本地)时。已创建该文件,但未将任何消息写入该文件。(在调试和发布中运行时)。以下是我的配置: <?xml version="1.0" encoding="utf-8" ?> <log4net> <appender name="RollingLogFileAppender" type="log4net.Appender.RollingF

我在.NETCore2.0上使用log4net,当从VisualStudio运行时,一切都正常,但是当我发布我的应用程序(本地)时。已创建该文件,但未将任何消息写入该文件。(在调试和发布中运行时)。以下是我的配置:

<?xml version="1.0" encoding="utf-8" ?>
  <log4net>
    <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
    <lockingModel type="log4net.Appender.FileAppender+MinimalLock"/>
    <file value="./logs/ids4" />
    <datePattern value="yyyy-MM-dd.'txt'"/>
    <staticLogFileName value="false"/>
    <appendToFile value="true"/>
    <rollingStyle value="Date"/>
    <maxSizeRollBackups value="100"/>
    <maximumFileSize value="15MB"/>
    <layout type="log4net.Layout.PatternLayout">
      <conversionPattern value="%date [%thread] %-5level App  %newline %message %newline %newline"/>
    </layout>
  </appender>
  <root>
    <level value="ALL"/>
    <appender-ref ref="RollingLogFileAppender"/>
  </root>
</log4net>
在我的启动文件中,我按如下方式配置日志记录:

public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
    loggerFactory.AddConsole(Configuration.GetSection("Logging"));
    loggerFactory.AddDebug();
    loggerFactory.AddLog4Net();
    //...
}
这也不是权限问题,因为文件仍在创建中,只是为空。我最好的猜测是它与日志记录级别有关?我认为在调试中发布可以解决这个问题

发布日志后,我如何才能让日志正常工作


注意关于这个问题,我已经看了其他一些,但是他们的问题似乎是文件没有复制到发布目录。Log4Net.Config在我的发布目录中,这不是问题所在。结果是我们有多个
appsettings.json
,还有
appsettings.Development.json

我将两者都更改为使用:

"LogLevel": {
  "Default": "Information",
  "System": "Information",
  "Microsoft": "Information"
}  
一切都开始起作用了

"LogLevel": {
  "Default": "Information",
  "System": "Information",
  "Microsoft": "Information"
}