Как настроить log4net для WCF - PullRequest
12 голосов
/ 15 марта 2010

В моем приложении asp webforms я выполняю инициализацию log4net;

log4net.Config.XmlConfigurator.Configure();

на global.asax на Application_Start, так что это делается один раз при запуске приложения.

Как правильно настроить log4net для приложений WCF, размещенных на IIS (конкретно спрашивая, где разместить эту строку, какое событие использовать и т. Д.), Чтобы log4net инициализировался один раз и не было ненужных инициализаций.

Ответы [ 3 ]

16 голосов
/ 15 марта 2010

Обычно я делаю это в конструкторе моего класса обслуживания, но проверяю, настроен ли log4net:

if (!LogManager.GetRepository().Configured)  
{  
  // configure log4net...  
} 

Я думаю, что если вы действительно хотите этого избежать, вам придется написать собственную фабрику обслуживания и выполнить настройку там.

4 голосов
/ 15 марта 2010

То же самое: Application_Start. Ведь это приложение ASP.NET. Для самостоятельного хостинга вы можете настроить log4net непосредственно перед запуском хоста.

2 голосов
/ 16 августа 2012

Добавление:

XmlConfigurator.Configure();

чтобы конструктор каждого из классов обслуживания сделал свое дело для меня.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...