compile group: 'org.slf4j', name: 'slf4j-api', version: "1.7.25"如果是应用程序:
compile(
'org.slf4j:slf4j-log4j12:1.7.25',
)
代码:
package test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* Created by Administrator on 2017/10/3.
*/
public class Log4jTest {
private static final Logger log = LoggerFactory.getLogger(Log4jTest.class);
public static void main(String args[]) {
log.info("start");
log.info("end");
}
}
配置(log4j.properties,放在resources目录下):
#=======================root================================================
logBaseDir=${catalina.base}/logs/
log4j.rootLogger=INFO,ConsoleAppender,INFOFile,errorFile
#=======================loggers==========================================
#log4j.logger.com=INFO,ConsoleAppender,INFOFile
log4j.appender.ConsoleAppender.Threshold=INFO
log4j.appender.ConsoleAppender=org.apache.log4j.ConsoleAppender
log4j.appender.ConsoleAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.ConsoleAppender.layout.ConversionPattern=%d{yyyy-MM-dd HH\:mm\:ss,SSS} %-5p [%t] %l - %m%n
log4j.appender.ConsoleAppender.Encoding=UTF-8
---过滤级别-------------------------------
Debug过滤:Debug,Info,Warn,Error信息都会命中
Info过滤: Info,Warn,Error信息都会命中
Warn过滤: Warn,Error信息都会命中
Error过滤: Error信息都会命中
---入口过滤--------------------------------
log4j.rootLogger=DEBUG,ConsoleAppender
#最高父类配置,其他的logger或category要继承此配置
#此配置的含义是:DEBUG及以上级别的日志信息都会输入到ConsoleAppender中。
log4j.logger.com.ykx=WARN,FileAppender,MongoDBAppender
log4j.category.com.ykx=WARN,FileAppender,MongoDBAppender
#logger和category含义系统,指定java包(com.ykx)的配置;
#com.ykx包中的日志配置会继承log4j.rootLogger配置,继承的结果是:
log4j.logger.com.ykx=WARN,FileAppender,MongoDBAppender,ConsoleAppender
---出口过滤----------------------------
log4j.appender.ConsoleAppender.Threshold=WARN
#指定ConsoleAppender记录的日志都是WARN及其以上级别的。
log4j.appender.ConsoleAppender=org.apache.log4j.ConsoleAppender
log4j.appender.ConsoleAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.ConsoleAppender.layout.ConversionPattern=%d{yyyy-MM-dd HH\:mm\:ss,SSS} %-5p [%t] %l - %m%n
log4j.appender.ConsoleAppender.Encoding=UTF-8