一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

Spring Boot 日志

 印度阿三17 2019-07-31

一、日志

1、SpringBoot采用的日志

  日志分為日志抽象層與日志實現(xiàn)層。類似于JDBC與數(shù)據(jù)庫的形式,不管連接的是什么數(shù)據(jù)庫,只需將JDBC中對應(yīng)的數(shù)據(jù)庫信息修改即可。這里的日志抽象層是類似JDBC的效果,只需修改相應(yīng)的日志實現(xiàn)層的信息即可。
  常用日志抽象層分類:
    JCL
    SLF4j
    jboss-logging
  常用日志實現(xiàn)層分類:
    Log4j
    JUL
    Log4j2
    Logback
  SpringBoot底層采用的是Spring框架,Spring默認采用JCL。但SpringBoot選用SLF4j與logBcak來實現(xiàn)日志的輸出。

2、使用SLF4j

(1)官網(wǎng)地址:https://www./
(2)使用手冊地址: https://www./manual.html
(3)手冊地址中有一個HelloWorld示例:

【需要導(dǎo)入的jar包】
slf4j的jar包,以及其實現(xiàn)層的jar包。

【HelloWorld.java】
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class HelloWorld {
  public static void main(String[] args) {
    Logger logger = LoggerFactory.getLogger(HelloWorld.class);
    logger.info("Hello World");
  }
}

(4)常用模式:

?

3、使用 SLF4J統(tǒng)一不同框架的日志

(1)地址: https://www./legacy.html
(2)步驟:
  step1:將系統(tǒng)中其他原有的日志框架先排除出去。
  step2:使用一個中間包去替換原有的jar包。
  step3:導(dǎo)入slf4j 以及 相關(guān)實現(xiàn)層的 jar 包。
(3)比如現(xiàn)在想要將Spring框架的日志(commons-logging)轉(zhuǎn)為(SLF4J logback)。
  首先使用 jcl-over-slf4j.jar 去替換commons-logging.jar包。然后需要導(dǎo)入 SLF4J與logback相關(guān)的jar包。

?

4、SpringBoot的日志

(1)SpringBoot底層使用slf4j logback 記錄日志。
(2)SpringBoot會將不同的日志框架轉(zhuǎn)為slf4j(使用中間替換包,先將原jar包從依賴關(guān)系中剔除,再添加新的jar包依賴)。
  在IDEA中找到<dependencies>標簽,右擊選中Diagrams,接著選中 Show Dependencies,可以看到當前所有依賴信息組成的圖。

?

找到日志相關(guān)信息,可以看到SpringBoot底層會將不同的日志框架轉(zhuǎn)為slf4j 。

?

5、SpringBoot如何使用日志

(1)獲得日志記錄器,使用 LoggerFactory.getLogger()。
(2)日志的級別:
  由低到高:trace < debug < info < warn < error
  根據(jù)不同的級別輸出日志信息。對于某個級別,輸出比此級別高以及此級別的日志。
  其中 SpringBoot 默認使用 info 級別的信息。即 輸出 info , warn, error 等日志信息。

【在test目錄下的一個測試類】
package com.example.helloworld;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;

@RunWith(SpringRunner.class)
@SpringBootTest
public class HelloworldApplicationTests {

    Logger logger = LoggerFactory.getLogger(getClass());
    @Test
    public void contextLoads() {
        logger.trace("=== trace ===");
        logger.debug("=== debug ===");
        logger.info("=== info ===");
        logger.warn("=== warn ===");
        logger.error("=== error ===");
    }

}

?

(3)設(shè)置日志打印級別:
  可以在配置文件(application.properties)中使用 logging.lever 去設(shè)置級別。

?

(4)選擇日志打印的位置:
  在配置文件中,如果存在logging.file 且 文件名為 my.log, 則會輸出日志到當前項目路徑下的 my.log文件中。
  在配置文件中,如果存在logging.path 且文件名為 /spring/log, 則會輸出到指定目錄的spring.log文件中。
  在配置文件中,若上述兩個都未指定,則默認輸出到控制臺。
  在配置文件中,若上述兩個均存在,則以logging.file為主。

(5)設(shè)置日志打印的格式:
  在配置文件中,使用 logging.pattern.console 可以指定打印在控制臺的日志格式。
  使用 logging.pattern.file 可以指定打印在指定文件中的日志格式。

【日志格式:】
    %d : 表示日期時間。
    %thread :表示線程名。
    %-5lever : 級別從左顯示5個字符的寬度。
    %logger[50] :表示logger名字最長為50個字符,否則按照點分割。
    %msg : 表示日志消息。
    %n :表示換行符。
    
【舉例:】
     logging.pattern.console = %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5lever %logger[50] -- %msg %n

?

來源:https://www./content-4-372951.html

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    少妇淫真视频一区二区| 色老汉在线视频免费亚欧| 亚洲一区二区亚洲日本| 好吊妞视频这里有精品| 99精品国产自在现线观看| 久热这里只有精品九九| 午夜福利黄片免费观看| 久久久精品区二区三区| 在线观看视频国产你懂的| 欧美成人精品国产成人综合| 欧美一区二区三区高潮菊竹| 中文字幕精品人妻一区| 尹人大香蕉一级片免费看| 亚洲内射人妻一区二区| 欧美精品亚洲精品日韩专区| 91麻豆精品欧美一区| 国内精品偷拍视频久久| 国产日韩欧美国产欧美日韩| 成人精品视频一区二区在线观看| 国产目拍亚洲精品区一区| 成人午夜视频在线播放| 色小姐干香蕉在线综合网| 高清不卡一卡二卡区在线| 尹人大香蕉一级片免费看| 国产又黄又爽又粗视频在线| 日韩夫妻午夜性生活视频| 日韩特级黄片免费在线观看| 精品高清美女精品国产区| 日韩欧美中文字幕人妻| 麻豆蜜桃星空传媒在线观看| 国产一区二区不卡在线播放| 亚洲欧美日韩色图七区| 国产原创中文av在线播放| 美国黑人一级黄色大片| 欧美熟妇喷浆一区二区| 男女激情视频在线免费观看| 欧美精品女同一区二区| 亚洲国产av在线观看一区| 国产亚洲精品岁国产微拍精品| 在线日韩中文字幕一区| 国产精品欧美激情在线|