Ответ 1
При запуске вызовите:
XmlConfigurator.Configure();
В вашем Web.config укажите log4net.Config в appSettings:
<add key="log4net.Config" value="Log.config" />
Этот специальный параметр позволяет изменить конфигурацию журнала без необходимости перекомпиляции. Особенно полезно для перемещения между несколькими средами.
Пример
Рассмотрим следующую структуру файла проекта:
\config\log4net\debug.config
\config\log4net\staging.config
\config\log4net\release.config
\config\appSettings\debug.config
\config\appSettings\staging.config
\config\appSettings\release.config
Конфигурации приложений и протоколирования различаются для каждой среды. Ссылки на конфигурации ведения журнала поддерживаются в настройках приложения.
\ Config\AppSettings\debug.config:
<appSettings>
<add key="log4net.Config" value="config\log4net\debug.config" />
...
</appSettings>
\ Config\AppSettings\staging.config:
<appSettings>
<add key="log4net.Config" value="config\log4net\staging.config" />
...
</appSettings>
\ Config\AppSettings\release.config:
<appSettings>
<add key="log4net.Config" value="config\log4net\release.config" />
...
</appSettings>
Изменение среды - это простой вопрос об обновлении файла appSettings в Web.config.
<appSettings file="config\appSettings\staging.config">
...
</appSettings>