log4net常见的appender设置

时间:2016-10-11 12:27:43

标签: logging log4net

有没有人知道是否可以创建某种常见的appender设置而不是在每个appender中重复设置。例如,我定义了3个appender:

<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>

如您所见,许多设置在appender部分重复(例如appendToFile,rollingStyle,datePattern等)。

是否有可能以某种方式定义appender的常用设置,这些设置将在定义时应用于每个部分。一些事情:

<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>

我在这个主题的文档中找不到任何内容。

1 个答案:

答案 0 :(得分:0)

您无法找到任何相关文档,因为log4net不支持此文档。您可以使用自己的工具生成或使用代码进行配置。