конфигурация log4net logger - PullRequest
       29

конфигурация log4net logger

1 голос
/ 23 декабря 2009

Можно ли настроить регистратор из конфигурации. У меня есть веб-приложение используя рамки. Каркас является расширяемым и имеет регистратор. Когда я регистрируюсь, в настоящее время регистратор настроен на класс фреймворка.

Возможно ли, что я могу настроить свое веб-приложение и настроить регистратор для веб-приложения на loggerForWebApp и регистратор для консольного приложения (которое использует такие же рамки) до loggerForConsoleApp?

Ответы [ 2 ]

3 голосов
/ 23 декабря 2009

В дополнение к корневому логгеру (который всегда должен быть там) у вас могут быть именованные логгеры с их собственными appender-refs и уровнями.

Например, у вас может быть что-то вроде этого:

<root>
....
</root>

<logger name="loggerForWebApp">
    <level value="WARN" />
    <appender-ref ... />
</logger>

<logger name="loggerForConsoleApp">
    <level value="WARN" />
    <appender-ref ... />
</logger>

В коде вы вызываете этих регистраторов по имени:

var log = LogManager.GetLogger("loggerForWebApp");
0 голосов
/ 23 декабря 2009

Совершенно определенно, и это одна из самых замечательных вещей в log4net: он может выходить из широкого спектра регистраторов.

Примеры приложений приведены в здесь . Вероятно, наиболее распространенным из них является RollingFileAppender, но ConsoleAppender может быть очень удобным для консольных приложений. В качестве альтернативы TraceAppender может записывать в стандартные прослушиватели трассировки .NET для дальнейшего перенаправления (или отображать в окне вывода отладки в Visual Studio).

Чтобы создать свой собственный, внедрите IAppender .

подробности следуют

...