在java se项目中使用log4j

一、引入jar包

官方下载地址: http://logging.apache.org/log4j/1.2/download.html
在src同级目录下, 创建lib文件夹, 将下载好的jar包放入(注意: jar是上面下载后解压后找的,不是直接下载的文件)
将jar包添加到依赖中, idea可以右键jar包, 点击Add as library, 如图:

二、添加配置文件

在src同级目录下添加 log4j.properties 配置文件

### 设置###
log4j.rootLogger = debug,stdout,D,E

### 输出信息到控制抬 ###
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern = [%p][%d{yyyy-MM-dd HH\:mm\:ss,SSS}][JavaTest][%t][%c][%L]%m%n

### 输出DEBUG 级别以上的日志到=E://logs/error.log ###
log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File = E://logs/log.log
log4j.appender.D.Append = true
log4j.appender.D.Threshold = DEBUG
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = [%p][%d{yyyy-MM-dd HH\:mm\:ss,SSS}][JavaTest][%t][%c][%L]%m%n

### 输出ERROR 级别以上的日志到=E://logs/error.log ###
log4j.appender.E = org.apache.log4j.DailyRollingFileAppender
log4j.appender.E.File =E\://logs/error.log
log4j.appender.E.Append = true
log4j.appender.E.Threshold = ERROR
log4j.appender.E.layout = org.apache.log4j.PatternLayout
log4j.appender.E.layout.ConversionPattern = [%p][%d{yyyy-MM-dd HH\:mm\:ss,SSS}][JavaTest][%t][%c][%L]%m%n

三、日志不生效

进行上述1、2步操作后, 可能不生效, 报如下信息:

log4j:WARN No appenders could be found for logger (java8.ThreadPoolExecutorTest).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.

是因为找不到配置文件的原因, 可以在启动参数上添加如下参数: 后面部分是我本机地址, 根据自己的替换

-Dlog4j.configuration=file:///E:/2018/project2/BootStudying/Java/log4j.properties  

找不到启动参数的看这里: main方法上右键


版权声明:本文为neuqzlc原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。