Java常用的日志框架log4j,log4j2,和logback等。 这几种日志框架通过lsf4j以门面模式的方式暴露出来,供开发者使用。
logback比其他两种日志框架提供更细化的日志控制,控制各个java包的日志级别。
1.为什么阿里巴巴工程师禁止直接使用Log4j和Logback API
2.带你弄清混乱的java日志体系
logback基于包的日志级别控制
Spring Boot集成logback日志插件时,需要在resources下新建文件logback-spring.xml,然后编写以下内容,
<?xml version="1.0" encoding="UTF-8" ?> <configuration> <!--导入默认的Spring-boot logback配置--> <include resource="org/springframework/boot/logging/logback/base.xml"/> <logger name="com.fubin" level="DEBUG"/> </configuration>
该文件需要引入logback中的base.xml文件,base.xml文件又依赖于defaults.xml,该文件给出了logback的一些默认配置。
基于springProfile的日志控制
profile是用于多种环境下的配置,比如dev开发环境,test测试环境,prod生产环境,以下配置的name=“default”替换为你需要的profile环境即可
<?xml version="1.0" encoding="UTF-8" ?> <configuration> <!--导入默认的Spring-boot logback配置--> <include resource="org/springframework/boot/logging/logback/base.xml"/> <logger name="com.fubin" level="DEBUG"/> <!--该日志级别比上面的通用日志级别更高--> <springProfile name="default"> <logger name="com.fubin" level="INFO"></logger> </springProfile> </configuration>
在application.yml配置文件中设置logging
logging:
level:
root: debug
path: logs/mylog
root 表示根路径的日志级别,path用于输出日志到磁盘的路径。更多信息查看Spring boot详细配置。