- 博客(6)
- 收藏
- 关注
原创 java日志通关(五)
不要打印类似这种只包含分隔线的内容:log.info("========== start =========="),因为在茫茫的日志中,这句日志的下一条很可能来自其他异步任务,如果使用 SLS 收集甚至来自另一台机器,这条分隔线根本起不到任何作用。%replace(p){r, t}:将给到的 p,使用正则 r 进行匹配,命中的替换为 t,所以上边就是,将 %exception 中的 [\r\n\t](即换行、回车、Tab)替换为 (四个空格);如果你这样写:。
2024-06-14 09:27:54
1443
2
转载 java日志通关(四)
logback-spring.xml是由 Spring Boot 找到,插入自己的上下文信息[1]并做进一步处理后再传递给Logback的,你可以在其中使用<springProfile>区分环境配置,也可以使用<springProperty>拿到Spring上下文信息(比如spring.application.name)。从前边我们可以看到,占位符的基本使用方式是:%占位符{参数},但其实还有一个用于控制格式的可选配置,可以放在%与占位符之间,叫作Format modifiers[7]。
2024-06-14 09:25:08
22
转载 java日志通关(三)
默认的LoggerName 即是被注解的Class;而且MDC的使用也很简单,就像是一个Map<String, String>实例,常用的方法put/get/remove/clear都有,又到了举粟子🌰时间:。日志的实现层会决定哪个等级的日志可以输出,这也是我们打日志时需要区分等级的原因,在保证重要的日志不丢失的同时,仅在有需要时才打印用于Debug的日志。所有set前缀的方法,对应的值都只有一个,比如setMessage/setCause,虽然你可以多次调用,但只有最后一次会生效。
2024-06-14 09:22:17
26
转载 java日志通关(二)
,从而达到排包的目的。的包版本要完全一致,所以如果引入这些桥接包,要保证它们的版本与前边选择的slf4j-api版本对应。版本不匹配,因为Slf4j 2.0.x改用SPI方式加载实现(参考【2.2.1 Slf4j 版本兼容性】),当你引入的Slf4j和Logback(或Log4j 2)版本不匹配时,就会导致这个报错。如果你使用Spring Boot的早期版本又想用上最新的Slf4j/Logback,可以参考这个讨论[11],其中有不少道友给出了适配方案,比如这个[12],不过我自己没有验证,祝你好运吧。
2024-06-14 09:16:41
21
转载 Java日志通关(一)
但在准备分享、补充细节的过程中,我又进一步发现目前日志相关的文章,都只是专注于某一个方面,或者讲历史和原理,或者解决包冲突,却都没有把整个Java日志知识串联起来。Log4j的作者Ceki看到了很多Log4j和JCL的不足,但又无力推动项目快速迭代,加上对Apache的管理不满,认为自己失去了对Log4j项目的控制权(博客[21]、邮件[22]),于是在2005年选择自立门户,并很快推出了一款新作品Simple Logging Facade for Java[23],简称Slf4j。
2024-06-14 09:12:11
24
原创 MySQL解压版安装和卸载
一.安装1.解压安装文件2.复制my-default.ini文件重命名为my.ini,并在my.ini添加如下内容[mysql]# 设置mysql客户端默认字符集default-character-set=utf8 [mysqld]#设置3306端口port = 3306 # 设置mysql的安装目录basedir=C:\Program Files (x
2017-03-01 16:40:48
894
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人