Does anyone know if it is possible to create some general settings for the application, rather than repeating the settings in each application. For example, I defined 3 applications:
<appender name="DefaultRollingFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="C:\Logs\MyProduct\General_" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd'.log'" />
<staticLogFileName value="false" />
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date{yyyy-MM-dd HH:mm:ss.ffffff} [%thread] [%username] %-5level [%property{NDC}] - %message%newline" />
</layout>
</appender>
<appender name="DefaultWCFMessagesFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="C:\Logs\MyProduct\Rest_" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd'.log'" />
<staticLogFileName value="false" />
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date{yyyy-MM-dd HH:mm:ss.ffffff} - %message%newline" />
</layout>
</appender>
<appender name="DefaultSqlFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="C:\Logs\MyProduct\Sql_" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd'.log'" />
<staticLogFileName value="false" />
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date{yyyy-MM-dd HH:mm:ss.ffffff} - %message%newline" />
</layout>
</appender>
As you can see, many settings are duplicated in all sections of the application (for example, appendToFile, rollStyle, datePattern, etc.).
Is it possible to somehow determine the general settings for the application, which will be applied to each section in the determination. Something like lines:
<appenderCommon>
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd'.log'" />
<staticLogFileName value="false" />
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
</appenderCommon>
<appender name="DefaultRollingFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="C:\Logs\MyProduct\General_" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date{yyyy-MM-dd HH:mm:ss.ffffff} [%thread] [%username] %-5level [%property{NDC}] - %message%newline" />
</layout>
</appender>
<appender name="DefaultWCFMessagesFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="C:\Logs\MyProduct\Rest_" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date{yyyy-MM-dd HH:mm:ss.ffffff} - %message%newline" />
</layout>
</appender>
<appender name="DefaultSqlFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="C:\Logs\MyProduct\Sql_" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date{yyyy-MM-dd HH:mm:ss.ffffff} - %message%newline" />
</layout>
</appender>
I can not find anything in the documentation on this.
source
share