欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

logback中的日志配置参数解析

程序员文章站 2022-07-03 19:19:25
...

springboot 中默认实现为LogBack,使用apache commons Logging 作为日志接口,因此代码通常这样:

public class FooControlelr{
	private Log log = LogFactory.getLog(FooControlelr.class);
	...
}

日志每行内容格式如下:
1)日期和时间;
2) 日志级别;
3)进程id,SpringBoot 应用进程id;
4)— 分隔符,接下来才是日志消息
5)[xxx],线程名称
6)类名;
7)消息体;
SpringBoot 支持对控制台日志输出和文件输出进行格式控制,代码如下(仅使用内置的logback):

logging.pattern.console=%level% %date{HH:mm:ss} %logger{20}.%M %L %m%n
logging.pattern.file=%level% %date{ISO8601} %logger{20}.%M %L %m%n
  • %level , 表示输出日志级别
  • %data 表示日志发生的时间,HH:mm:ss 输出时分秒,适用于控制台查看,ISO8601 标准的日期输出, yyyy-MM-dd HH:mm:ss
  • %logger 输出Logger 的名字,包名加类名,{n} 限制了输出长度,如果输出长度不够,尽可能显示类名,压缩包名
  • %thread , 当前线程的名字
  • %M 日志发生时的方法的名字
  • %L , 日志调用所在代码行,线上运行时不建议使用此参数,因为获取代码行对性能有消耗
  • %m,日志消息
  • %n , 日志换行