Как я могу сказать, откуда log4net думает, что он получает свой конфигурационный файл? - PullRequest
4 голосов
/ 04 мая 2010

У меня есть следующий журнал из журнала отладки log4net:

log4net: DefaultRepositorySelector: хранилище [log4net-default-repository] уже существует с использованием типа хранилища [log4net.Repository.Hierarchy.Hierarchy] log4net: XmlConfigurator: настройка хранилища [log4net-default-repository] с использованием файла [log4net.config], отслеживающего обновления файлов log4net: XmlConfigurator: настройка хранилища [log4net-default-repository] с использованием файла [log4net.config] log4net: XmlConfigurator: настройка хранилища [log4net-default-repository] с использованием потока log4net: ОШИБКА XmlConfigurator: Ошибка при загрузке конфигурации XML System.Xml.XmlException: '' - неожиданный токен. Ожидаемый токен ->. Строка 7, позиция 184. в System.Xml.XmlTextReaderImpl.Throw (исключение e) в System.Xml.XmlTextReaderImpl.Throw (String res, String [] args) в System.Xml.XmlTextReaderImpl.ThrowUnexpectedToken (String Ожидаемый токен1, String Ожидаемый токен2) в System.Xml.XmlTextReaderImpl.ThrowUnexpectedToken (Int32 pos, String ОжидаемыйToken1, String ОжидаемыйToken2) в System.Xml.XmlTextReaderImpl.ParseAttributes () в System.Xml.XmlTextReaderImpl.ParseElement () в System.Xml.XmlTextReaderImpl.ParseElementContent () в System.Xml.XmlTextReaderImpl.Read () в System.Xml.XmlTextReader.Read () в System.Xml.XmlValidatingReaderImpl.Read () в System.Xml.XmlValidatingReader.Read () в System.Xml.XmlLoader.LoadNode (логическое skipOverWhitespace) в System.Xml.XmlLoader.LoadDocSequence (XmlDocument parentDoc) в System.Xml.XmlLoader.Load (документ XmlDocument, читатель XmlReader, логическое preserveWhitespace) в System.Xml.XmlDocument.Load (читатель XmlReader) в log4net.Config.XmlConfigurator.Configure (репозиторий ILoggerRepository, Stream configStream)

Единственная проблема в том, что я понятия не имею, откуда он думает, что он получает этот файл log4net.config, так как в моем AssemblyInfo.cs я определил его так:

[assembly: log4net.Config.XmlConfigurator(ConfigFile = "api4net.config", Watch = true)]

Есть ли простой способ определить, куда log4net загружает этот мистический файл log4net.config с ошибками xml?

1 Ответ

0 голосов
/ 04 мая 2010

Я думал, что нужно настроить appenders в app.config или в web.config. но я новичок в log4net. Фил Хаак написал:

Если вы используете отдельный файл конфигурации, быстрый и простой (и грязный) способ найти ваше приложение - это поместить файл конфигурации в webroot ...

...