Springboot日志输出
Springboot默认使用Sl4j和Logback实现日志功能,在不配置日志的情况下,Springboot默认在控制台打印输出日志。
测试代码
默认输出级别为Info调整日志的输出级别
调整日志输出级别,在application配置文件中将logging.level.root改为debug,表示将整个项目的日志级别调整为debug。
logging.level可以设置具体的包名,为具体包设置日志级别,也可以使用logging.level.group设置分组,将多个包归为一组,然后将为这个组统一设置日志级别。level下有sql和web预设的组,分别对应具体包下的日志级别。
sqlorg.springframework.jdbc.core
org.hibernate.SQL
org.jooq.tools.LoggerListener
weborg.springframework.core.codec
org.springframework.http
org.springframework.web
org.springframework.boot.actuate.endpoint.web
org.springframework.boot.web.servlet.ServletContextInitializerBeans
logging.group和logging.level用法将日志输出到文件
为了将日志输出到文件,在application配置文件中配置logging.file.name属性,将默认在项目根目录创建指定名称的日志文件。Springboot默认每个日志文件大小为10M,超过10M将创建一份新的日志文件。
将配置文件的logging.file.name属性注释掉,添加logging.file.path=/spring/log,在项目磁盘根目录下新建了spring文件-->log文件夹--->spring.log文件。spring.log是默认的日志文件名称。当有name属性时,path属性不生效。
日志文件的相关配置
日志文件位置日志输出的格式
Springboot默认日志格式:
默认的日志格式
%clr(%d{${LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd HH:mm:ss.SSS}}){faint}:日志的时间格式。
%clr(${LOG_LEVEL_PATTERN:-%5p})日志信息的级别,因为日志级别最多5个字符,-%5p表示左对齐,右边以空格补齐,%5p则会右对齐,左边以空格补齐。
%clr(${PID:- }){magenta}:产生日志的进程号
%clr([%15.15t]){faint}:产生日志的线程名
%clr(%-40.40logger{39}){cyan}:产生日志的类名
%m:日志的具体信息
%n:换行
lombok的@Sl4j注解进行日志输出
不用再写Logger logger = LoggerFactory.getLogger(Object.class),直接使用log就可以进行日志输出了。