SpringBoot之SpringBoot整合log4j
点击上方蓝色字体,选择“标星公众号”
优质文章,第一时间送达
作者 | 彼岸舞
来源 | urlify.cn/63ARZr
添加Maven依赖修改POM.xml
在默认的情况下,SpringBoot自动整合了最简单的logback,那么要想使用log4j就要先排除默认的日志框架,然后添加log4j场景启动器
修改的是web的场景启动器,增加的是log4j的场景启动器,因为在新版中是没有spring-boot-starter的,所以加到了web中,记得添加lombok不知道如何集成的,请参考《SpringBoot之SpringBoot整合lombok》
org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-logging
org.springframework.boot
spring-boot-starter-log4j
1.3.8.RELEASE
新建log4j.properties
log4j.properties
#定义根节点
log4j.rootLogger=DEBUG,error,CONSOLE,info
#设置控制台打印
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
#设置为格式化打印 PatternLayout
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%d{yyyy-MM-dd-HH-mm} [%t] [%c] [%p] - %m%n
#设置info级别的日志
log4j.logger.info=info
#输出到日志文件
log4j.appender.info=org.apache.log4j.DailyRollingFileAppender
log4j.appender.info.layout=org.apache.log4j.PatternLayout
log4j.appender.info.layout.ConversionPattern=%d{yyyy-MM-dd-HH-mm} [%t] [%c] [%p] - %m%n
#日期文件名格式化
log4j.appender.info.datePattern='.'yyyy-MM-dd
log4j.appender.info.Threshold = info
#是否追加
log4j.appender.info.append=true
#文件存放位置
log4j.appender.info.File=E:/dance/demo/log/info.log
log4j.logger.error=error
log4j.appender.error=org.apache.log4j.DailyRollingFileAppender
log4j.appender.error.layout=org.apache.log4j.PatternLayout
log4j.appender.error.layout.ConversionPattern=%d{yyyy-MM-dd-HH-mm} [%t] [%c] [%p] - %m%n
log4j.appender.error.datePattern='.'yyyy-MM-dd
log4j.appender.error.Threshold = error
log4j.appender.error.append=true
log4j.appender.error.File=E:/dance/demo/log/error.log
log4j.logger.DEBUG=DEBUG
log4j.appender.DEBUG=org.apache.log4j.DailyRollingFileAppender
log4j.appender.DEBUG.layout=org.apache.log4j.PatternLayout
log4j.appender.DEBUG.layout.ConversionPattern=%d{yyyy-MM-dd-HH-mm} [%t] [%c] [%p] - %m%n
log4j.appender.DEBUG.datePattern='.'yyyy-MM-dd
log4j.appender.DEBUG.Threshold = DEBUG
log4j.appender.DEBUG.append=true
log4j.appender.DEBUG.File=E:/dance/demo/log/dubug.log
配置文件解读:我觉得这个解读比较不错,想了解具体含义的可以看看
修改配置文件application.yml
logging:
# 设置logback.xml位置
# config: classpath:log/logback.xml
# 设置log4j.properties位置
config: classpath:log4j.properties
启动项目测试:
info日志成功输入到info.log
访问接口不穿参数,看一下错误日志是否会记录
查看日志
在这里我发现了一个问题,就是当程序报错的时候明明是error级别的错误,但是log4j打印出来的却是debug级别所以error文件,根本写不进去东西
测试:
log4j控制台输出调为 info级别
访问接口
error级别错误
控制台都没有显示的
尝试降低控制台日志级别为debug
再次测试
打印出来居然是debug级别的,在网上找了找,说是需要调整到warn级别,再次尝试
emmm都不想贴图了,一点反应没有了,尝试在程序中手动打印error级别错误,看看能不能写到文件中
emm,手动写的写进入了
好吧,也算是能用了,推荐使用SpringBoot默认集成的Logback
粉丝福利:Java从入门到入土学习路线图
👇👇👇
👆长按上方微信二维码 2 秒
感谢点赞支持下哈
评论