I have an app.config file with log4net configured. But My files are not getting created. Inside the logger, It shows Error.
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
</configSections>
<log4net>
<logger name="ApplicationLogger">
<appender-ref ref="XmlAppender" />
<level value="ALL" />
</logger>
<appender name="XmlAppender" type="log4net.Appender.FileAppender">
<file type="log4net.Util.PatternString" value="C:\MyApplication\Logs\%property{LogName}.log" />
<appendToFile value="true" />
<rollingStyle value="Composite" />
<datePattern value=".yyyyMMdd-HHmm" />
<maxSizeRollBackups value="10000" />
<maximumFileSize value="1MB" />
<countDirection value="1"/>
<immediateFlush value="true" />
<appendToFile value="true" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%message%n" />
</layout>
</appender>
</log4net>
My C# Code is as follows:
public void LogMsg(string msg)
{
try
{
strLogFileName = GetFileName();
log4net.Repository.ILoggerRepository loggerRepository =
LogManager.CreateRepository(strLogFileName + "Repository");
ThreadContext.Properties["LogName"] = strLogFileName;
log4net.Config.XmlConfigurator.Configure(loggerRepository);
}
catch (Exception ex) { }
logger = LogManager.GetLogger(strLogFileNameECU + "Repository", "ApplicationLogger");
logger.Error(msg);
}
Please Tell me where I went wrong.
for rolling file, you should use log4net.Appender.RollingFileAppender
, here is a config demo
<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="log/log" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="_yyyy-MM-dd.\t\x\t" />
<maxSizeRollBackups value="10" />
<maximumFileSize value="1MB" />
<staticLogFileName value="false"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
</layout>
</appender>