Java程序打印日志

一、maven依赖

POM文件中添加以下依赖,maven依赖的jar包版本可以在maven central repository 查看

复制代码
<dependency>
	<groupId>org.projectlombok</groupId>
	<artifactId>lombok</artifactId>
	<version>1.18.34</version>
	<scope>compile</scope>
</dependency>
<dependency>
	<groupId>org.slf4j</groupId>
	<artifactId>slf4j-api</artifactId>
	<version>2.0.13</version>
	<scope>compile</scope>
</dependency>
<dependency>
	<groupId>org.slf4j</groupId>
	<artifactId>slf4j-log4j12</artifactId>
	<version>2.0.13</version>
	<scope>compile</scope>
</dependency>
<dependency>
	<groupId>org.apache.logging.log4j</groupId>
	<artifactId>log4j-to-slf4j</artifactId>
	<version>2.23.1</version>
	<scope>compile</scope>
</dependency>
<dependency>
	<groupId>org.apache.logging.log4j</groupId>
	<artifactId>log4j-api</artifactId>
	<version>2.23.1</version>
	<scope>compile</scope>
</dependency>
<dependency>
	<groupId>org.apache.logging.log4j</groupId>
	<artifactId>log4j-core</artifactId>
	<version>2.23.1</version>
	<scope>compile</scope>
</dependency>

二、配置文件

在resources目录下新建log4j.properties配置文件,配置内容如下。

复制代码
#指定打印级别和打印位置
log4j.rootLogger=DEBUG,console,infoFile,errorFile

#控制台输出
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.Target=System.out
log4j.appender.console.Threshold=INFO
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%-5p] [%t] - [%X{traceId}] - %c.%M():%L - %m%n

#输出info日志
log4j.appender.infoFile=org.apache.log4j.RollingFileAppender
log4j.appender.infoFile.File=./log/info.log
log4j.appender.infoFile.MaxFileSize=50mb
log4j.appender.infoFile.Threshold=INFO
log4j.appender.infoFile.layout=org.apache.log4j.PatternLayout
log4j.appender.infoFile.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%-5p] [%t] - [%X{traceId}] - %c.%M():%L - %m%n

#info日志中指定打印的最低级别和最高级别
log4j.appender.infoFile.filter.infoFilter=org.apache.log4j.varia.LevelRangeFilter
log4j.appender.infoFile.filter.infoFilter.levelMin=INFO
log4j.appender.infoFile.filter.infoFilter.levelMax=INFO

#输出error日志
log4j.appender.errorFile=org.apache.log4j.RollingFileAppender
log4j.appender.errorFile.File=./log/error.log
log4j.appender.errorFile.MaxFileSize=50mb
log4j.appender.errorFile.Threshold=ERROR
log4j.appender.errorFile.layout=org.apache.log4j.PatternLayout
log4j.appender.errorFile.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%-5p] [%t] - [%X{traceId}] - %c.%M():%L - %m%n

#打印sql日志
log4j.logger.org.mybatis=INFO
log4j.logger.java.sql=INFO
log4j.logger.java.sql.Statement=INFO
log4j.logger.java.sgl.ResultSet=INFO
log4j.logger.java.sq1.PreparedStatement=INFO
相关推荐
沐苏瑶几秒前
Java数据结构-LinkedList与链表
java·数据结构·链表
今天你TLE了吗5 分钟前
JVM学习笔记:第九章——StringTable字符串常量池
java·jvm·笔记·后端·学习
心前阳光6 分钟前
Mirror网络库插件使用4
java·linux·网络·unity·c#·游戏引擎
Rsun045516 分钟前
定时任务如何保证任务的可靠性和幂等性?
java
西野.xuan7 分钟前
【effective c++】条款四十三:学习处理模版化基类内的名称
java·c++·学习
Nontee8 分钟前
Java 后端开发面试技能清单
java·面试
1104.北光c°9 分钟前
JVM虚拟机【八股篇】:类加载机制与性能调优
java·开发语言·jvm·笔记·程序人生·调优·双亲委派
范特西.i17 分钟前
QT聊天项目(11)
开发语言·qt
JTCC19 分钟前
Java 设计模式西游篇 - 第一回:单例模式显神通 悟空巧解资源劫
java·单例模式·设计模式