Log4Net: несколько регистраторов

У меня есть следующая конфигурация log4net:

<log4net>
  <appender name="A1" type="log4net.Appender.RollingFileAppender">
    <file type="log4net.Util.PatternString" value="C:\path1.log" />
  </appender>

  <appender name="A2" type="log4net.Appender.RollingFileAppender">
    <file type="log4net.Util.PatternString" value="C:\path2.log" />
  </appender>

  <logger name="A1Logger">
    <level value="ALL" />
    <appender-ref ref="A1" />
  </logger>

  <logger name="A2Logger">
    <level value="ALL" />
    <appender-ref ref="A2" />
  </logger>

</log4net>

а затем в коде я делаю следующее:

var logger1 = LogManager.GetLogger("A1Logger");
var logger2 = LogManager.GetLogger("A2Logger");

но оба записываются в один и тот же файл C:\path1.log.

Что я делаю не так?


person Román    schedule 12.08.2010    source источник
comment
Я не уверен, в чем может быть проблема. Есть ли еще какие-либо конфигурации, которые вы нам не показываете? Например, есть ли настройка корневого регистратора? Вы уверены, что ведете журнал в logger2 (в основном, что там нет опечатки)? Он когда-нибудь регистрируется в path2.log?   -  person Mafu Josh    schedule 14.08.2010
comment
Не могли бы вы предоставить немного больше информации? В вашем приложении есть несколько файлов конфигурации log4net или это единственный? Как вы загружаете этот файл конфигурации? Через код или автоматически через свойства вашей сборки? Кроме того, это стандартное приложение или веб-приложение?   -  person gregwhitaker    schedule 15.08.2010
comment
О, это началось снова. @gwhitake, я использую один файл конфигурации, мое приложение является настольным приложением, и единственный код, который я использую, - это тот, что в начальном посте. Я также добавил элемент ‹root› на всякий случай, но ошибка продолжает кусать меня   -  person Román    schedule 08.09.2010


Ответы (2)


Добавьте атрибут debug="true" к элементу <log4net> , я предполагаю, что проблемы вызывает отсутствующий элемент <root>. Вы всегда должны включать элемент <root /> logger.

person Peter Lillevold    schedule 17.08.2010
comment
Было бы неплохо узнать обоснование этого - person Román; 18.08.2010

Кажется, это была странная ошибка отладки. Сейчас не воспроизводит. Мои извинения.

person Román    schedule 18.08.2010