Springboot 设置同时输出日志到文件
【摘要】 文章目录实现原理文件输出参考资料 实现springboot 项目默认只把日志输出到控制台,现在需要输出到指定的日志文件 /var/logs/dg/foo/foo.log。只要一条语句:logging: file: name: "/var/logs/dg/foo/foo.log" 原理springboot 所有内部日志都使用 common logging 输出,但未限定具体的日志实现...
文章目录
实现
springboot 项目默认只把日志输出到控制台,现在需要输出到指定的日志文件 /var/logs/dg/foo/foo.log
。
只要一条语句:
logging:
file:
name: "/var/logs/dg/foo/foo.log"
原理
springboot 所有内部日志都使用 common logging 输出,但未限定具体的日志实现。
springboot 对 Java Util Log、Log4j2、Logback 提供默认配置,开发者可以选择其中一个,开箱即用,
springboot 默认配置把日志输出到控制台。
若是使用 springboot starter 创建的项目,springboot 选择 Logback 作为日志实现。
且恰当配置了 logback 的日志路由,确保任何使用 Java Util Logging, Commons Logging, Log4J, 或 SLF4J
的库都可以正常工作。
文件输出
默认,springboot 只把日志输出到控制台,不写入日志文件。通过配置 logging.file.name 和
logging.file.path 属性(比如在application.properties文件中设置)可以写日志到文件中。
- 不指定 logging.file.name 也不指定 logging.file.path:仅输出到控制台
- 指定 logging.file.name 但不指定 logging.file.path:输出到控制台以及 logging.file.name 指定的日志文件中。logging.file.name 可以是绝对路径,也可以是相对路径(相对于当前目录)。
- 不指定 logging.file.name,而指定 logging.file.path: 输出到控制台以及
${logging.file.path}spring.log
。logging.file.path 可以是绝对路径,也可以是相对路径(相对于当前目录)。
PS:同时指定二者,效果与 2 等同。
参考资料
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)