springBoot日志处理

默认配置

application.properties中设置spring.output.ansi.enabled参数来支持多才输出。
       NEVER:禁用ANSI-colored输出(默认项)
       DETECT:会检查终端是否支持ANSI,是的话就采用彩色输出(推荐项)
       ALWAYS:总是使用ANSI-colored格式输出,若终端不支持的时候,会有很多干扰信息,不推荐使用

文件输出(日志文件会在10Mb大小的时候被截断,产生新的日志文件)
       logging.file,设置文件,可以是绝对路径,也可以是相对路径
       logging.path,设置目录,会在该目录下创建spring.log文件,并写入日志内容

级别控制(格式:logging.level.*=LEVEL)
       logging.level:日志级别控制前缀,*为包名或Logger名
       LEVEL:选项TRACE, DEBUG, INFO, WARN, ERROR, FATAL, OFF

自定义日志配置(不同日志系统组织配置文件名规则)
       日志服务并非必须通过Spring的配置文件控制,一般都在ApplicationContext创建前就初始化了。通过系统属性和传统的Spring Boot外部配置文件依然可以很好的支持日志控制和管理。Spring Boot官方推荐优先使用带有-spring的文件名作为你的日志配置。
       Logback:logback-spring.xml, logback-spring.groovy, logback.xml, logback.groovy
       Log4j:log4j-spring.properties, log4j-spring.xml, log4j.properties, log4j.xml
       Log4j2:log4j2-spring.xml, log4j2.xml
       JDK (Java Util Logging):logging.properties


Spring boot中使用log4j记录

排除pring Boot默认的日志框架Logback,依赖于架包spring-boot-starter-logging中,再引入log4j的依赖

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter</artifactId>
    <exclusions>
        <exclusion> 
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-logging</artifactId>
        </exclusion>
    </exclusions>
</dependency>

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-log4j</artifactId>
</dependency>

在src/main/resources目录下加入log4j.properties配置文件。

控制台输出
输出到文件
分类输出
       通过添加如下的appender内容,按天输出到不同的文件中去,同时还需要为log4j.rootCategory添加名为file的appender,这样root日志就可以输出到logs/allLog.log文件中了。

# LOG4J配置
log4j.rootCategory=INFO, stdout, file, errorfile
log4j.category.com.base=DEBUG, didifile
log4j.logger.error=errorfile

# 控制台输出
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n

# root日志输出
log4j.appender.file=org.apache.log4j.DailyRollingFileAppender
log4j.appender.file.file=logs/allLog.log
log4j.appender.file.DatePattern='.'yyyy-MM-dd
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n

# error日志输出
log4j.appender.errorfile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.errorfile.file=logs/error.log
log4j.appender.errorfile.DatePattern='.'yyyy-MM-dd
log4j.appender.errorfile.Threshold = ERROR
log4j.appender.errorfile.layout=org.apache.log4j.PatternLayout
log4j.appender.errorfile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n

# com.base包下的日志输出
log4j.appender.didifile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.didifile.file=logs/base.log
log4j.appender.didifile.DatePattern='.'yyyy-MM-dd
log4j.appender.didifile.layout=org.apache.log4j.PatternLayout
log4j.appender.didifile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L ---- %m%n

多环境配置

创建多个环境配置文件

1.创建application.properties文件,属性:spring.profiles.active=dev(默认激活dev)

2.创建application-dev.properties文件,属性:logging.level.com.base=DEBUG(日志级别、包com.base、输出到名为didifile定义的appender中)

3.动态改版DEBUG级别,修改log4j.properties属性:log4j.category.com.base=DEBUG, didifile

变更为:log4j.category.com.base=${logging.level.com.base}, didifile

注:通过命令加参数修改日志级别:java -jar xxx.jar --spring.profiles.active=prod


 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值