• 1.2 日志框架


    1.日志框架应该具有的能力

    2.

    logback 的一些用法   

    @Slf4j 可以不用每个类上面都写 private final Logger logger = LoggerFactory.getLogger(LoggerTest.class);
    package com.imooc;
    
    import lombok.extern.slf4j.Slf4j;
    import org.junit.Test;
    import org.junit.runner.RunWith;
    import org.springframework.boot.test.context.SpringBootTest;
    import org.springframework.test.context.junit4.SpringRunner;
    
    /**
     * Created by Administrator on 2018/11/5.
     */
    @RunWith(SpringRunner.class)
    @SpringBootTest
    @Slf4j
    public class LoggerTest {
    //    private final Logger logger = LoggerFactory.getLogger(LoggerTest.class);
    
        @Test
        public void test1() {
    
            String name = "姓名";
            int age = 2;
            log.info("username:{},age:{}", name, age);
            log.info("info");
            log.debug("debug");
            log.error("error");
        }
    }

    2.1 第一种写法  只能简单的配置输出格式和路径

    #logging:
    #  pattern:
    ##    console: "%d - %msg%n"
    ##  path: D:JavaInstallselllog
    #  file: D:JavaInstallsellloglog1.log
    #  level:
    #    com.imooc.LoggerTest: debug

    2.2 第二种格式 新建一个配置文件 (一般用这个写法)

    logback-spring.xml
    <?xml version="1.0" encoding="UTF-8" ?>
    <configuration>
        <appender name="comsoleLog" class="ch.qos.logback.core.ConsoleAppender">
            <layout class="ch.qos.logback.classic.PatternLayout">
                <pattern>
                    %d -- %msg%n
                </pattern>
            </layout>
        </appender>
    
        <!--只输出info日志-->
        <appender name="fileInfoLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
            <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
                <level>ERROR</level>
                <!--<onMatch>DENY</onMatch>-->
                <!--<onMismatch>ACCEPT</onMismatch>-->
            </filter>
            <encoder>
                <pattern>
                    %msg%n
                </pattern>
            </encoder>
            <!--滚动策略-->
            <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
                <!--路径-->
                <fileNamePattern>
                    D:JavaInstallsellloginfo.%d.log
                </fileNamePattern>
            </rollingPolicy>
        </appender>
    
        <!--只输出error级别的日志-->
        <appender name="fileErrorLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
            <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
                <level>ERROR</level>
            </filter>
            <encoder>
                <pattern>
                    %msg%n
                </pattern>
            </encoder>
            <!--滚动策略-->
            <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
                <!--路径-->
                <fileNamePattern>
                    D:JavaInstallselllogerror.%d.log
                </fileNamePattern>
            </rollingPolicy>
        </appender>
    
    
    
        <root level="info">
            <appender-ref ref="comsoleLog"></appender-ref>
            <appender-ref ref="fileInfoLog"></appender-ref>
            <appender-ref ref="fileErrorLog"></appender-ref>
        </root>
    </configuration>
  • 相关阅读:
    虚拟机中按键切回windows系统界面快捷键
    余数
    质数(素数)判断代码实现
    =excel========》函数使用
    python 正则表达式规则
    linux常用命令详解
    c指针
    visual studio 2015 开发时常见问题的解决方案
    python装饰器
    构造方法
  • 原文地址:https://www.cnblogs.com/qinls/p/9907099.html
Copyright © 2020-2023  润新知