У меня есть несколько пользовательских средств визуализации объектов, чтобы я мог сохранять свои записи в журнале как можно более сухими При первом развертывании моего приложения log4net не распознает пользовательские средства визуализации, но делает все остальное правильно. Если я прикасаюсь к файлу конфигурации (чтобы он выглядел измененным), средство отслеживания файлов принимает изменения, и средства визуализации начинают работать. Однако через некоторое время они перестают работать, и мне приходится снова касаться файла конфигурации log4net.
Установкой является приложение .Net 3.5 (sp1) wcf. Эта проблема возникает как на веб-сервере разработки vs 2008, так и на IIS 7 на win 2008. У меня есть файл конфигурации с именем log4net.config, и я использую метод AssemblyInfo для указания на него.
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", Watch = true)]
То, как я получаю доступ к логгеру, - это использование статических членов класса следующим образом.
private static readonly ILog log = LogManager.GetLogger(typeof(Service));
Рендереры настроены аналогично этому.
<renderer renderingClass="MyCompany.Log4net.SearchRequestRenderer, MyCompany.Log4net" renderedClass="System.DirectoryServices.Protocols.SearchRequest" />
Все эти средства визуализации находятся в отдельной сборке от главной, где происходит регистрация. Я что-то упускаю или делаю что-то не так? Я не знаю, почему он не распознает рендеры сразу, а потом снова забывает их.