maven项目使用slf4j + log4j 进行日志记录

此处主要介绍maven web工程下如何使用 logback + slf4j  进行日志记录。

参考:https://www.cnblogs.com/zml-java/p/6148849.html  

1. 新建maven项目,在pom中添加依赖

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <project xmlns="http://maven.apache.org/POM/4.0.0"
 3          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 4          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 5     <modelVersion>4.0.0</modelVersion>
 6 
 7     <groupId>com.test.log</groupId>
 8     <artifactId>com.test.log</artifactId>
 9     <version>1.0-SNAPSHOT</version>
10 
11     <dependencies>
12         <!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-api -->
13         <dependency>
14             <groupId>org.slf4j</groupId>
15             <artifactId>slf4j-api</artifactId>
16             <version>1.7.2</version>
17         </dependency>
18         <!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-log4j12 -->
19         <dependency>
20             <groupId>org.slf4j</groupId>
21             <artifactId>slf4j-log4j12</artifactId>
22             <version>1.7.2</version>
23         </dependency>
24     </dependencies>
25 </project>

2. 项目的目录结构如下:

3. 配置log4j.properties

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

### 输出信息到控制抬 ###
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 = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%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 = %-d{yyyy-MM-dd HH:mm:ss}  [ %t:%r ] - [ %p ]  %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 = %-d{yyyy-MM-dd HH:mm:ss}  [ %t:%r ] - [ %p ]  %m%n

4. 编写测试类 Log4jTestDemo

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class Log4jTestDemo {
    private static Logger logger = LoggerFactory.getLogger(Log4jTestDemo.class);

    /**
     * @param args
     */
    public static void main(String[] args) {
        // System.out.println("This is println message.");

        // 记录debug级别的信息
        logger.debug("This is debug message.");
        // 记录info级别的信息
        logger.info("This is info message.");
        // 记录error级别的信息
        logger.error("This is error message.");
    }


}

5. 运行测试 查看控制台输出和文件输出

 

 

 

 

 

posted on 2018-08-07 10:38  tinylight1991  阅读(338)  评论(0)    收藏  举报

导航