基于Spring Boot的Logback日志轮转配置
在生产环境下,日志是最好的问题调试和跟踪方法,因此日志的地位是十分重要的。我们平时经常使用的log4j,slf4j,logback等等,他们的配置上大同小异。这里就结合Spring Boot配置一下Logback的日志。
默认最简单的配置
默认情况下,如果对日志没有特殊处理,可以直接基于application.properties进行配置。
常用的参数有:
logging.level
配置日志的级别
logging.file
logging.path
这两个参数只能配置一个生效,一个是文件(可以有绝对路径或者相对路径);另一个是路径,文件的名称会默认为spring.log
日志默认按照大小进行切分,由于我这边没有产生那么大的文件,因此没有做实验。
这种方法最简单,但是不能处理那种复杂的日志轮转的机制。比如没天一个文件这种需求,因此可以考虑使用独立的日志文件进行配置:
使用独立的配置文件配置
如果有复杂的需求,可以像其他普通的web应用一样,配置独立的logback.xml:
- 首先注意的是这个文件必须放在resources目录下(我这边发现,如果通过logging.config指向另一个目录下的logback.xml会在程序启动时报错,报无法解析该xml。猜想可能是在其他目录下的xml都被当做spring的配置或者有xml schema信息的配置,单纯的logback.xml它不认识)
然后在application.properties文件中加入:
# 配置logback
logging.config=classpath:logback-spring.xml
即可。
注意如果是logging.config=classpath:xxxx/logback-spring.xml
,就不行了哈!我试过好多次!
配置的内容基本可以参考下面的来:
<?xml version="1.0" encoding="UTF-8"?>
<configuration><!-- 属性文件 --><property name="processName" value="xxx"/><property name="logDir" value="/opt/logs/xxx"/><!-- 默认的控制台日志输出,一般生产环境都是后台启动,这个没太大作用 --><appender name="stdout" class="ch.qos.logback.core.ConsoleAppender"><!--<Encoding>UTF-8</Encoding>--><layout class="ch.qos.logback.classic.PatternLayout"><pattern>%date [%thread] %-5level %logger{50}:%L - %msg%n</pattern></layout></appender><!-- 配置文件轮转 --><appender name="logfile" class="ch.qos.logback.core.rolling.RollingFileAppender"><!--<Encoding>UTF-8</Encoding>--><File>${logDir}/service.log</File><rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"><FileNamePattern>${logDir}/history/service.%d{yyyy-MM-dd}.log.gz</FileNamePattern><maxHistory>30</maxHistory></rollingPolicy><layout class="ch.qos.logback.classic.PatternLayout"><pattern>%date [%thread] %-5level %logger{50}:%L - %msg%n</pattern></layout></appender><!-- 修改其他包的日志输出级别 --><logger name="org.apache.zookeeper"><level value="WARN"/></logger><!-- root 默认日志配置 , 注意这里的级别哈!小心生产环境用DEBUG,压爆你的磁盘!--><root level="INFO"><appender-ref ref="logfile"/><appender-ref ref="stdout"/></root>
</configuration>
参考
- Spring Boot 日志框架配置
- slf4j,log4j,logback的关系
- Spring Boot官方文档,这个必须有!
基于Spring Boot的Logback日志轮转配置相关推荐
- spring boot—自定义logback日志配置
自定义日志配置 spring boot2.2.4官方文档 logback中文文档 1)spring boot可以适应所有日志框架,只需在类路径下包含相应的依赖来激活各种日志系统. 2)sp ...
- 基于Spring Boot配置文件的日志记录示例样本
我们希望在Spring Boot中为不同的配置文件使用不同的日志记录配置,例如在本地运行中,我们只希望控制台日志记录和用于生产,我们希望文件记录日志支持每天滚动日志文件. 我想出了一个示例logbac ...
- 基于Spring Boot Profile的日志记录示例样本
我们希望在Spring Boot中为不同的配置文件使用不同的日志记录配置,例如在本地运行中,我们只希望控制台日志记录和用于生产,我们希望文件记录日志支持每天滚动日志文件. 我提出了一个示例logbac ...
- spring boot使用logback实现多环境日志配置
From: https://blog.csdn.net/vitech/article/details/53812137 软件生存周期中,涉及代码运行的环节有编码.测试和维护阶段,而一套成熟的代码,在此 ...
- 基于Spring Boot不同的环境使用不同的配置方法
原文路径:http://www.jb51.net/article/132589.htm ---------------------------------------- 默认是profile为dev, ...
- 基于Spring Boot 2.5.1 微服务框架发布(Eurynome Cloud )
企业级技术中台微服务架构与服务能力开发平台(Eurynome Cloud ) Eurynome Cloud是一款企业级技术中台微服务架构与服务能力开发平台.基于Spring Boot 2.5.1.Sp ...
- spring boot中的日志入门
日志通常不会在需求阶段作为一个功能单独提出来,也不会在产品方案中看到它的细节.但是,这丝毫不影响它在任何一个系统中的重要地位. 报警系统与日志系统的关系 为了保证服务的高可用,发现问题一定要及时,定位 ...
- 基于Spring Boot+Cloud构建微云架构
链接:my.oschina.net/u/3636867/blog/1802517 前言 首先,最想说的是,当你要学习一套最新的技术时,官网的英文文档是学习的最佳渠道.因为网上流传的多数资料是官网翻译而 ...
- 基于Spring Boot和Spring Cloud实现微服务架构学习--转
原文地址:http://blog.csdn.net/enweitech/article/details/52582918 看了几周spring相关框架的书籍和官方demo,是时候开始总结下这中间的学习 ...
最新文章
- 如何用手机打开dcm格式图片_手机也能当扫描仪用?如何用手机扫描图片?
- 视觉SLAM总结——视觉特征子综述
- html标记什么规定applet,HTML applet 标签
- linux下vtune使用
- Qt 第一步 HelloWorld 的第一个程序
- python SimpleHTTPServer 快速共享文件
- 【Linux小技巧】开启关闭蜂鸣声
- python定制框架知识点_python框架中flask知识点总结
- 数据预处理-数据变换-属性构造
- 【LINQ】Linq to SQL -- Count/Sum/Min/Max/Avg 操作符
- 2021年葡萄酒酿造及葡萄酒产业发展研究报告
- c语言编程绝对质数,c语言求绝对素数
- Java jdk的下载与安装
- 阿里云服务器可选系统有哪些?如何选择?
- 2 年前端面试心路历程(字节跳动、YY、虎牙、BIGO)
- 2021CCPC东北四省赛 K. City 并查集
- 360P 480P 720P 1080P 1080i 说明
- 《设计模式入门》 19.命令模式
- scrapy使用用Xpath提取深层标签
- python压缩图片--指定压缩大小且保真压缩