Конфигурирование log4net для web-части - CodeHelper

Конфигурирование log4net для web-части

2

Пишу web-часть под SharePoint 2007. Хочу использовать log4net, но не знаю, как его сконфигурировать. Товарище девелопера, расскажите пожалуйста!

Новые ответы


1

Если конфигурация расположена в Web.config приложения, то можно в Global.asax (не знаю, возможно ли это для Sharepoint) подписаться на событие старта приложения и произвести инициализацию log4net:

log4net.Config.XmlConfigurator.Configure();

Альтернативный вариант — использовать атрибут XmlConfigurator. Его нужно применить к своей сборке (файл Properties.cs). Чтобы сконфигурировать с настройками из Web.config:

[assembly: log4net.Config.XmlConfigurator()]

Чтобы сконфигурить с настройками из файла Log4Net.config:

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

В случае с SharePoint может потребоваться жесткое указание путей к файлам. Например, если Log4Net.config лежит в папке 12:

[assembly: log4net.Config.XmlConfigurator(ConfigFile = 
@"C:\Program Files\Common Files\Microsoft Shared\" + 
@"Web Server Extensions\12\Log4Net.config", Watch = true)]

Или, если прокатит, то так:

[assembly: log4net.Config.XmlConfigurator(ConfigFile = 
    SPUtility.GetGenericSetupPath(@"Log4Net.config"), 
    Watch = true)]
Alexander

Да, статические методы при описании атрибута применять не получается.

admax

Этого я и боялся. Тогда, наверное, лучше использовать прямую конфигурацию:

log4net.Config.XmlConfigurator.Configure();

Только нужно найти в Sharepoint где подписаться на событие старта приложения и выполнить этот код.

1

Вот тут неплохая статья для старта с log4net: Использование log4net, Ежедневные логи на log4net


v1.7.123.556
© 2009—2010 CodeHelper FAQ | О сайте | Обратная связь | История изменений | Статьи
Creative Commons LicenseМатериалы сайта распространяются под лицензией Creative Commons Attribution-Share Alike 3.0 Unported.