Ответ 1
Вам необходимо настроить его до создания первого регистратора.
Для этого:
-
Ваш основной класс (Program.cs) не должен иметь регистратор
-
Основной метод не должен ссылаться на любые классы, у которых есть журнал.
-
Затем вы можете настроить log4net в основном методе.
В качестве альтернативы вы можете использовать класс-оболочку для создания экземпляров журналов, которые обеспечивают настройку log4net до создания регистратора, например:
static class Log4NetHelper
{
private static bool _isConfigured;
static void EnsureConfigured()
{
if (!_isConfigured)
{
... configure log4net here ...
_isConfigured = true;
}
}
public static ILog GetLogger(string name)
{
EnsureConfigured();
log4net.ILog logger = log4net.LogManager.GetLogger(name);
return logger;
}
}