【问题标题】:log4net configuration: Can I refer to the same layout in several appenders?log4net 配置:我可以在几个 appender 中引用相同的布局吗?
【发布时间】:2014-05-19 15:58:31
【问题描述】:

我想根据消息的某些属性将日志消息发送到多个文件(即不同的附加程序)。

问题是每个appender 都需要指定相当冗长的layout(包含一个complication ConversionPattern 和几个转换器)。我最终在每个appender 中复制了这个配置。这可行,但并不理想,因为它使配置比我想要的要长得多,并且在布局更改时不得不更新 3 个复杂的配置。

我希望能够定义一次布局,并让我的所有附加程序都引用那个定义(就像几个记录器可以引用同一个附加程序一样)。但也许有更好的方法来实现我减少配置重复的目标?

我的 google-foo 很弱,我找不到答案。这里有人可以帮忙吗?

TIA。

【问题讨论】:

    标签: log4net


    【解决方案1】:

    很抱歉,除非您准备好编写自己的 Layout 类,否则目前无法跳过复制粘贴的配置。

    您可以从LayoutSkeleton 继承以开始,并在代码中构建您的布局或使用备用配置文件(我认为 log4net 不会对其配置文件中的悬空布局配置友好)

    【讨论】:

    • 写一个 Layout 类是一个很好的解决方案,除非 OP 需要能够改变 config 中的布局..
    • @stuartd 是的,这就是为什么我在谈论另一个仅用于布局的配置文件;我认为一个足够复杂的系统可能非常值得拥有自己的配置,但是你会失去 log4net 的原生 observable 机制。不过提醒一下的好点。
    猜你喜欢
    • 2011-10-09
    • 1970-01-01
    • 2010-11-19
    • 2011-08-27
    • 1970-01-01
    • 1970-01-01
    • 2011-12-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多