【问题标题】:log4net common appender settingslog4net 常用 appender 设置
【发布时间】:2017-02-19 23:52:37
【问题描述】:

有没有人知道是否可以创建某种通用的附加程序设置而不是在每个附加程序中重复设置。例如,我定义了 3 个附加程序:

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

我在有关此主题的文档中找不到任何内容。

【问题讨论】:

  • 不行,不能这样,log4net配置系统不支持..

标签: logging log4net


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-10-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多