技术解析

想让 Spring Boot 的默认日志打印出文件名、方法名和行号,可以配置的吗?
0
2021-06-10 16:00:35
idczone

Spring Boot 的默认日志长下面这样,我想打印出文件名、方法名和行号,可以配置的吗?

我不太想重写 pattern,现在使用的是CONSOLE_LOG_PATTERN国外服务器。还是说只能重写 pattern 才能实现?


logback

文件名、方法名和行号 配置好 logback 就能满足

logging.pattern.console= [%line:%file->%method] - %msg%n

那样日志比较多的时候会严重影响性能

你是说重写 pattern 吧?

为什么呢?

获取行号或者文件名需要反射来实现

我们公司把 info 级别的行号都去掉了,据说说是提高 20%的性能,不知道数据怎么来的,有没有大佬能提供更明确的数据结果

https://logback.qos.ch/manual/layouts.html

把 info 关掉估计能再提高 20%, = =

请问楼主打印台字体颜色怎么弄的?

https://stackoverflow.com/questions/30571319/spring-boot-logging-pattern

/>#7
https://stackoverflow.com/questions/30793226/performance-impact-of-logging-class-name-method-name-and-line-number

获取行号之类一般是通过手动抛异常然后遍历堆栈拿的,所以会比较耗费性能

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服