设置 LogBack Appender 的相对路径

Posted

技术标签:

【中文标题】设置 LogBack Appender 的相对路径【英文标题】:Set relative path for LogBack Appender 【发布时间】:2014-07-10 15:40:42 【问题描述】:

有没有办法在 logback 中为 Layout 配置设置相对路径?

<configuration debug="true">
    <appender name="FILE" class="ch.qos.logback.core.FileAppender">
        <encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder">
            <layout class="ch.qos.logback.classic.html.HTMLLayout">
                <pattern>%relative%thread%mdc%level%logger%msg</pattern>
                <cssBuilder class="ch.qos.logback.classic.html.UrlCssBuilder">
            <url>http://localhost:8080/myProject/resources/css/main.css</url>
        </cssBuilder>
            </layout>
        </encoder>
        <file>F:/Projects/myProject/src/main/webapp/test.html</file>
    </appender>

    <root level="DEBUG">
        <appender-ref ref="FILE" />
    </root>
</configuration>

我想将&lt;file&gt; 设置为相对路径。有没有办法把它放到 webapp 或 WEB-INF 文件夹中? CSS 也是如此

【问题讨论】:

【参考方案1】:

我在 Jetty 上看到了这个(我自己没有尝试过):

<file>\$jetty.home/logs/jetty.log</file>

并在 Tomcat 8 上尝试过这个(有效):

<file>$catalina.base/logs/whatever.log</file>

您可能会发现这很有帮助,但仍需要在 webapps 下手动制作路径...

【讨论】:

以上是关于设置 LogBack Appender 的相对路径的主要内容,如果未能解决你的问题,请参考以下文章

logback在SpringBoot下出现no applicable action for [appender], current ElementPath is [[configuration][a(

无法在 Logback 中将 appender 设置为 logger

Logback 的 Syslog Appender

Logback - 你能从 env 变量中定义 appender 名称和类吗?

springboot 整合logback,设置日志的输出路径

logback解析——Appender