Журнал 4Net не работает в опубликованном приложении на linux - PullRequest
0 голосов
/ 13 марта 2020

У меня проблема с входом в мою рабочую среду. В отладке на VS2017 работает отлично, никаких проблем с регистрацией. У меня есть файл журнала 4net .config. xml, который содержит мою конфигурацию, и я включаю его в Startup.cs.

            var logRepository = LogManager.GetRepository(Assembly.GetEntryAssembly());
            var logConfig = new FileInfo("log4net.config.xml");
            log4net.Config.XmlConfigurator.ConfigureAndWatch(logRepository, logConfig);

Это мой журнал 4net .config. xml file:

<?xml version="1.0" encoding="utf-8" ?>
<log4net>
  <appender name="Console" type="log4net.Appender.ConsoleAppender">
    <layout type="log4net.Layout.PatternLayout">
      <!-- Pattern to output the caller's file name and line number -->
      <conversionPattern value="%date %-5level %logger - %message%newline" />
    </layout>
  </appender>
  <appender name="FileAppender" type="log4net.Appender.FileAppender">
    <file value="log-file.txt" />
    <appendToFile value="true" />
    <layout type="log4net.Layout.PatternLayout">
      <conversionPattern value="%date %-5level %logger - %message%newline" />
    </layout>
  </appender>
  <root>
    <level value="ALL"/>
    <appender-ref ref="FileAppender" />
    <appender-ref ref="Console" />
  </root>
</log4net>

У кого-нибудь есть какие-либо советы, что мне следует попробовать, чтобы эта штука работала в моем опубликованном приложении ? Опубликованное приложение находится на linux, но в коде у меня нет путей к файлам, жестко закодированным. У меня также есть файл web.config в опубликованном приложении, и там я добавил

<configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>        
</configSections>
...