关于 SpringBoot 中日志自定义 Logback 配置的问题

2020-06-06 18:33:39 +08:00
 azev

看 spring 官方这么说

8.1.1. Configure Logback for File-only Output

If you want to disable console logging and write output only to a file, you need a custom logback-spring.xml that imports file-appender.xml but not console-appender.xml, as shown in the following example:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <include resource="org/springframework/boot/logging/logback/defaults.xml" />
    <property name="LOG_FILE" value="${LOG_FILE:-${LOG_PATH:-${LOG_TEMP:-${java.io.tmpdir:-/tmp}}/}spring.log}"/>
    <include resource="org/springframework/boot/logging/logback/file-appender.xml" />
    <root level="INFO">
        <appender-ref ref="FILE" />
    </root>
</configuration>

You also need to add logging.file.name to your application.properties, as shown in the following example:

logging.file.name=myapplication.log

=======

有个疑问为什么还需要在 application.properties 中再定义 logging.file.name ? 我测试了下 不设置这个变量没有影响啊

而且更重要的 当我同时设置 property name="LOG_FILE" 与 logging.file.name 发现 后者是无效的
有没有什么途径让后者覆盖前者?

811 次点击
所在节点    问与答
1 条回复
fmumu
2020-06-06 18:54:53 +08:00
在 logback-spring.xml 中使用 spring 配置变量

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/679237

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX