У меня есть следующий код, который записывает все очень красиво. Должен ли я добавить это в конструктор всех моих классов?Конфигурирование Log4Net для полного проекта
Есть ли способ настроить его для полного проекта? Полагаю, я мог бы обходить журналы во всех классах, но это швы вроде беспорядочного решения.
class Program
{
/// <summary>
/// Application start
/// <param name="settings"></param>
/// <returns></returns>
static int Main(string[] args)
{
string logFile = string.Format(@"{0}\Cloud\Cloud.Log", Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData));
log4net.GlobalContext.Properties["LogFileName"] = logFile;
log4net.Config.XmlConfigurator.Configure();
ILog log = log4net.LogManager.GetLogger(typeof(Program));
log.Info("Console Applicatin Start");
}
}
Как я могу настроить Log4Net для полного решения?
Я не думаю, что это имеет отношение к вопросу, но вот мой мой App.config:
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
</configSections>
<log4net>
<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
<file type="log4net.Util.PatternString" value="%property{LogFileName}.txt" />
<appendToFile value="true" />
<rollingStyle value="Size" />
<maxSizeRollBackups value="10" />
<maximumFileSize value="250KB" />
<staticLogFileName value="true" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
</layout>
</appender>
<root>
<level value="ALL" />
<appender-ref ref="RollingFileAppender" />
</root>
</log4net>
Любая причина для не используя app.config для конфигурации? – FishySwede
Ну, у меня также есть конфиг приложения, я добавил его к вопросу, который я не думал, что это имеет значение. Это мой первый раз, используя Log4net. Причина для -1? – DaImTo
-1 я не был, не знаю, почему кто-то проголосовал. – FishySwede