zoukankan      html  css  js  c++  java
  • 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>
  • 相关阅读:
    Cannot resolve symbol 'SpringBootApp
    Java读取ZIP文件ZipEntry.getsize()总是返回-1?
    java 读取zip里面的xml文件
    导出:xml zip
    jquery form submit提交方式
    [转][C#]无法创建虚拟目录。ASP.NET 2.0 尚未在 Web服务器上注册。
    [转][C#].Net反编译利器
    [转][echarts]地图轮播
    [转][C#]AutoFac 使用方法总结
    [转]用代码访问 Https
  • 原文地址:https://www.cnblogs.com/qinls/p/9907099.html
Copyright © 2011-2022 走看看