在 Logback 中的多个 Appender 之间共享一个编码器/模式

发布于 2024-11-03 06:06:09 字数 79 浏览 3 评论 0原文

这是我第一次涉足 LogBack 世界,但是我在文档中找不到可以定义一次编码器/模式并在多个附加程序之间共享它的任何地方。知道如何实现这一点吗?

This is my first foray into the world of LogBack, however I couldn't find anywhere in the documentation where I could define an encoder/pattern once and share it among multiple appenders. Any idea how to accomplish this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

无需解释 2024-11-10 06:06:09

模式可以通过变量替换重用。

<configuration>

    <property name="defaultPattern"
        value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n" />

    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>${defaultPattern}</pattern>
        </encoder>
    </appender>

    <root level="debug">
        <appender-ref ref="STDOUT" />
    </root>
</configuration>

Patterns are reusable with variable substitution.

<configuration>

    <property name="defaultPattern"
        value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n" />

    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>${defaultPattern}</pattern>
        </encoder>
    </appender>

    <root level="debug">
        <appender-ref ref="STDOUT" />
    </root>
</configuration>
假装爱人 2024-11-10 06:06:09

对于任何感兴趣的人,我确实从 LogBack 文档的 第 4 章 中找到了这个小宝石: “每个布局/编码器都与一个且唯一的一个附加程序相关联,称为所属附加程序。”对我来说,这看起来好像附加程序不可能共享单个编码器 实例。

For anyone interested I did find this little jewel from Chapter 4 of LogBack's documentation: "Each layout/encoder is associated with one and only one appender, referred to as the owning appender." which to me reads as though it's not possible for Appenders to share a single Encoder instance.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文