2016-12-06 6 views
0

Я пытаюсь запустить log4net в приложении ASP.NET Core и до сих пор получил проблему.Проблемы с запуском log4net

я получил вторую строчку в моем appsettings.json

"log4netConfig": "log4net\\logConfiguration.xml" 

и это в Startup.cs

log4net.Config.XmlConfigurator.ConfigureAndWatch(new FileInfo(string.Concat(env.ContentRootPath, @"\", loggingConfig["log4netConfig"]))); 

Кажется, работает, по крайней мере, на локальной машине, но после его публикации, я получаю второе ошибка:

Failed to find configuration section 'log4net' in the application's .config file. Check your .config file for the <log4net> and <configSections> elements. The configuration section should look like: <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" /> 

Итак ... как я понимаю, конфигурация не была основана. я также ручной работы регистратора для всего проекта, который содержит XmlConfigurator.Configure() и это очень плохо для тех видов вещей, как я понимаю (он привык работать нормально, пока я не нужно, чтобы переместить путь log4net файла в appsettings.json.

Что ? я могу изменить, чтобы сделать эту работу вещь правильно

+0

Поддерживает ли log4net .Net Core? – Liam

+0

Существует ли этот файл 'new FileInfo (string.Concat (env.ContentRootPath, @" \ ", loggingConfig [" log4netConfig "]))'? т. е. вы уверены, что путь правильный? – rbm

+0

Раньше я запускал его по-разному. Просто '

ответ

0

Ну, проблема в конечном итоге нечто подобное:.

XmlConfigurator.Configure() был внутри моего регистратора, и регистратор был добавлен с .AddSingleton в Startup.cs оказалось, что logger попытался найти log4net.config ключ в app.config (которого больше нет), и в итоге эта проблема возникла.

Я изменил конфигурационный вызов и стрелу, больше ошибок ...

Смежные вопросы