SpringBoot项目中使用Logback实现多环境日志配置详解,java多线程面试题总结

子节点一

appender用来格式化日志输出节点,有俩个属性name和class,class用来指定哪种输出策略,常用就是控制台输出策略和文件输出策略。

控制台输出ConsoleAppender:

%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50}-%msg%n

表示对日志进行编码:

%d{yyyy-MM-dd’ 'HH:mm:ss.sss}——日志输出时间 %thread——输出日志的进程名字,这在Web应用以及异步任务处理中很有用 %-5level——日志级别,并且使用5个字符靠左对齐 %logger{36}——日志输出者的名字 %msg——日志消息 %n——平台的换行符;

ThresholdFilter为系统定义的拦截器,例如我们用ThresholdFilter来过滤掉ERROR级别以下的日志不输出到文件中。如果不用记得注释掉,不然你控制台会发现没日志。

输出到文件RollingFileAppender

一种常见的日志输出到文件,随着应用的运行时间越来越长,日志也会增长的越来越多,将他们输出到同一个文件并非一个好办法。RollingFileAppender用于切分文件日志:

<appender name=“INFO-LOG”

class=“ch.qos.logback.core.rolling.RollingFileAppender”>

ERROR

DENY

ACCEPT

${LOG_INFO_HOME}//%d{yyyy-MM-dd}_%i.log

30

<timeBasedFileNamingAndTriggeringPolicy

class=“ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP”>

64 MB

%d{yyyy-MM-dd HH:mm:ss:SSS} %-5level [%thread] %logger{50}-%L %msg%n

其中重要的是rollingPolicy的定义,上例中${LOG_INFO_HOME}//%d{yyyy-MM-dd}_%i.log定义了日志的切分方式——把每一天的日志归档到一个文件中,30表示只保留最近

  • 17
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值