随笔分类 - 99——其他-Log4j2
摘要:问题 使用maven-shade-plugin或者maven-assembly-plugin插件把项目打成一个可执行JAR包时,如果你引入了log4j2会出现如下问题: 解决方法 pom中添加如下配置。 原因分析 log4j2 是采用的插件式编程,当log4j2包编译时,或者含有log4j2插件的包
阅读全文
摘要:背景 在项目中,可能会产生非常多的日志记录,为了方便日志分析,可以将日志按级别输出到指定文件。 log4j2.xml配置文件 注意点 重要的是,如果有多个ThresholdFilter,那么Filters是必须的。同时在Filters中,首先要过滤不符合的日志级别,把不需要的首先DENY掉,然后再A
阅读全文
摘要:一、环境搭建 我们以log4j为例,探寻slf4j与log4j的绑定过程。 1.Java类 2.log4j.properties文件 来自https://docs.oracle.com/cd/E29578_01/webhelp/cas_webcrawler/src/cwcg_config_log4j
阅读全文
摘要:背景 在使用log4j2打日志时,当发生大量异常时,造成大量线程block问题的问题。 一个关于log4j2的高并发问题:https://blog.fliaping.com/a-high-concurrency-problem-of-log4j2/ 大量线程block原因 发生异常,打印异常栈时,会
阅读全文
摘要:1.背景 Log4j 2中记录日志的方式有同步日志和异步日志两种方式,其中异步日志又可分为使用AsyncAppender和使用AsyncLogger两种方式。 2.Log4j2中的同步日志 所谓同步日志,即当输出日志时,必须等待日志输出语句执行完毕后,才能执行后面的业务逻辑语句。 下面通过一个例子来
阅读全文
摘要:一、什么是RollingFile RollingFileAppender是Log4j2中的一种能够实现日志文件滚动更新(rollover)的Appender。 rollover的意思是当满足一定条件(如文件达到了指定的大小,达到了指定的时间)后,就重命名原日志文件进行归档,并生成新的日志文件用于lo
阅读全文