zoukankan      html  css  js  c++  java
  • Spring Boot 整合 slf4j+log4j 实现日志管理

    一:首先新建一个jar项目,如下图:

    二:添加log4j的依赖,如下pom.xml文件:

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
     
        <groupId>com.micai</groupId>
        <artifactId>micai-springboot-log4j-8</artifactId>
        <version>1.0-SNAPSHOT</version>
        <modelVersion>4.0.0</modelVersion>
     
        <packaging>jar</packaging>
     
        <name>micai-springboot-log4j-8</name>
        <url>http://maven.apache.org</url>
     
        <!-- Spring Boot 启动父依赖 -->
        <parent>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>1.3.6.RELEASE</version>
        </parent>
     
        <dependencies>
            <!-- Spring Boot web依赖 -->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
                <exclusions>
                    <exclusion>
                        <groupId>org.springframework.boot</groupId>
                        <artifactId>spring-boot-starter-logging</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <!-- Spring Boot log4j依赖 -->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-log4j</artifactId>
            </dependency>
        </dependencies>
    </project>

    三:新增log4j.properties配置文件:

    # LOG4J配置
    log4j.rootCategory=INFO, stdout, file
    
    # 控制台输出
    log4j.appender.stdout=org.apache.log4j.ConsoleAppender
    log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
    log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n
    
    # root日志输出到文件
    log4j.appender.file=org.apache.log4j.DailyRollingFileAppender
    log4j.appender.file.file=/data/logs/springboot-log4j-all.log
    log4j.appender.file.DatePattern='.'yyyy-MM-dd
    log4j.appender.file.layout=org.apache.log4j.PatternLayout
    log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n
    
    # 按不同package进行输出
    # com.micai包下的日志配置
    log4j.category.com.micai=DEBUG, didifile
    
    # com.micai下的日志输出
    log4j.appender.didifile=org.apache.log4j.DailyRollingFileAppender
    log4j.appender.didifile.file=/data/logs/springboot-log4j-my.log
    log4j.appender.didifile.DatePattern='.'yyyy-MM-dd
    log4j.appender.didifile.layout=org.apache.log4j.PatternLayout
    log4j.appender.didifile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L ---- %m%n
    
    # ERROR级别输出到特定的日志文件中
    log4j.logger.error=errorfile
    # error日志输出
    log4j.appender.errorfile=org.apache.log4j.DailyRollingFileAppender
    log4j.appender.errorfile.file=/data/logs/springboot-log4j-error.log
    log4j.appender.errorfile.DatePattern='.'yyyy-MM-dd
    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,SSS} %5p %c{1}:%L - %m%n

    四:具体打印日志的java类,如下:

    package com.micai.springboot.web;
     
    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
     
    /**
     * @author zhaoxinguo on 2017/8/21.
     */
    @RestController //提供实现了REST API,可以服务JSON,XML或者其他。这里是以String的形式渲染出结果。
    public class HelloWorldController {
     
        private Logger logger = LoggerFactory.getLogger(this.getClass());
     
        @RequestMapping("/") //提供路由信息,”/“路径的HTTP Request都会被映射到sayHello方法进行处理。
        public String sayHello(){
            logger.info("hello world");
            return "Hello,World!";
        }
     
    }

    五:最后生成的日志文件,如下:

    特别提醒:Spring Boot 只有1.3.x和1.3.x以下版本才支持log4j的日志配置,1.3.x以上版本只支持log4j2,logback的日志配置

  • 相关阅读:
    CSS的浮动和清除
    外边距合并现象
    CSS 盒子模型
    CSS样式三
    CSS的继承与优先级
    CSS 样式二
    UVA 11922 Permutation Transformer(平衡二叉树)
    HDU 3726 Graph and Queries(平衡二叉树)(2010 Asia Tianjin Regional Contest)
    POJ 1873 The Fortified Forest(枚举+凸包)
    POJ 2069 Super Star(计算几何の最小球包含+模拟退火)
  • 原文地址:https://www.cnblogs.com/windpoplar/p/12006592.html
Copyright © 2011-2022 走看看