logj日志使用例子

本文介绍如何在项目中配置并使用Log4j进行日志记录。包括将log4j的jar包添加到项目的lib目录,创建log4j.properties配置文件以定义不同级别的日志输出及目标,并通过示例展示如何在测试类中使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


1、下载log4j的jar包放到项目lib目录下。


2、在项目src目录下新建log4j.properties配置文件

###定义日志输出级别和输出平台 ###  
log4j.rootLogger = debug,stdout,D,M


#输出到控制台
log4j.appender.stdout = org.apache.log4j.ConsoleAppender  
log4j.appender.stdout.Target = System.out  
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout  
log4j.appender.stdout.layout.ConversionPattern = [%p] %d{yyyy-MM-dd HH\:mm\:ss,SSS} method\:%l%m%n  


#设置日志名称D的配置输出到文件,每天生成一个文件
log4j.logger.D=info,R
log4j.appender.R = org.apache.log4j.DailyRollingFileAppender  
log4j.appender.R.File = d:/logs/dlog.log  
#日志是否追加
log4j.appender.R.Append = true  
log4j.appender.R.Threshold = DEBUG   
log4j.appender.R.layout = org.apache.log4j.PatternLayout  
log4j.appender.R.layout.ConversionPattern = %-d{yyyy-MM-dd HH\:mm\:ss}  [%t\:%r] - [%p]  %m%n  


#指定cn.dao包下的日志输出级别和目的地
log4j.logger.cn.dao=DEBUG,stdout




#设置日志名称M的配 ,文件大小到达指定尺寸的时候产生一个新的文件,
log4j.logger.M=info,R1
log4j.appender.R1 = org.apache.log4j.RollingFileAppender
log4j.appender.R1.File = d:/logs/mlog.log 
log4j.appender.R1.Append = true  
log4j.appender.R1.MaxFileSize=100KB 
#设置为保存一个备份文件
log4j.appender.R1.MaxBackupIndex=1
log4j.appender.R1.Threshold = DEBUG   
log4j.appender.R1.layout = org.apache.log4j.PatternLayout  
log4j.appender.R1.layout.ConversionPattern = %-d{yyyy-MM-dd HH\:mm\:ss}  [ %t\:%r ] - [ %p ]  %m%n 


3、新建一个测试类

public static void main(String[] args) {
//日志
  Logger logger1 = Logger.getLogger("D");
   
 Logger logger2 = Logger.getLogger("M"); 
 logger2.info("【M】请求进入控制层开始.......");
 logger1.info("【D】请求进入控制层开始.......");
}

运行main方法日志就会写到对应的文件

在IntelliJ IDEA中找不到Log4j可能是由于几个原因: 1. **库依赖缺失**:检查是否有添加Log4j到项目的依赖。如果是Maven项目,确保pom.xml中有正确的`<dependency>`标签引入 Log4j;对于Gradle项目,则在build.gradle文件中配置。 ```xml <!-- Maven --> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>2.x.x</version> <!-- 更新到最新版本 --> </dependency> // Gradle (针对Log4j 2) implementation 'org.apache.logging.log4j:log4j-api:2.x.x' runtimeOnly 'org.apache.logging.log4j:log4j-core:2.x.x' ``` 2. **配置文件问题**:Log4j配置文件(通常是log4j2.xml或log4j.properties)可能未被IDEA识别或放置在错误的位置。将配置文件放在项目的resources目录下,并确保它能被应用找到。 3. **模块结构**:如果项目有多个模块,确保包含Log4j的模块已设置为提供库,其他模块作为客户端引用它。 4. **IDE插件冲突**:有时候第三方插件可能会覆盖默认的Log4j配置。尝试禁用或更新相关插件,看看是否解决问题。 5. **初始化问题**:确保你的应用程序在启动时已经正确初始化了Log4j,例如通过`LogManager.getLogger YourClass.class.getName();`获取日志器。 如果你按照上述步骤检查还是无法解决,可以尝试重启IDEA,或者清理并重建项目索引(`File` > `Invalidate Caches / Restart`)。如果问题依然存在,可能是IDEA配置出现了问题,你可以搜索相关论坛或官方文档寻找解决方案。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值