亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

SpringBoot Logback日志配置

2019-11-06 08:04:18
字體:
來源:轉載
供稿:網友

Logback的配置介紹:

1、Logger、appender及layout

Logger作為日志的記錄器,把它關聯到應用的對應的context上后,主要用于存放日志對象,也可以定義日志類型、級別。

Appender主要用于指定日志輸出的目的地,目的地可以是控制臺、文件、遠程套接字服務器、 MySQL、 PostreSQL、 Oracle和其他數據庫、 JMS和遠程UNIX Syslog守護進程等。

Layout 負責把事件轉換成字符串,格式化的日志信息的輸出。

2、logger context

各個logger 都被關聯到一個 LoggerContext,LoggerContext負責制造logger,也負責以樹結構排列各 logger。其他所有logger也通過org.slf4j.LoggerFactory 類的靜態方法getLogger取得。 getLogger方法以 logger 名稱為參數。用同一名字調用LoggerFactory.getLogger 方法所得到的永遠都是同一個logger對象的引用。

3、有效級別及級別的繼承

Logger 可以被分配級別。級別包括:TRACE、DEBUG、INFO、WARN 和 ERROR,定義于 ch.qos.logback.classic.Level類。如果 logger沒有被分配級別,那么它將從有被分配級別的最近的祖先那里繼承級別。root logger 默認級別是 DEBUG。

4、打印方法與基本的選擇規則

打印方法決定記錄請求的級別。例如,如果 L 是一個 logger 實例,那么,語句 L.info(“..”)是一條級別為 INFO 的記錄語句。記錄請求的級別在高于或等于其 logger 的有效級別時被稱為被啟用,否則,稱為被禁用。記錄請求級別為 p,其logger的有效級別為 q,只有則當 p>=q時,該請求才會被執行。

該規則是 logback 的核心。級別排序為: TRACE < DEBUG < INFO < WARN < ERROR。

logback的使用:

Logback的默認配置

如果配置文件 logback-test.xml 和 logback.xml 都不存在,那么 logback 默認地會調用BasicConfigurator ,創建一個最小化配置。最小化配置由一個關聯到根 logger 的ConsoleAppender 組成。輸出用模式為%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 的 PatternLayoutEncoder 進行格式化。root logger 默認級別是 DEBUG。

1、Logback的配置文件

Logback 配置文件的語法非常靈活。正因為靈活,所以無法用 DTD 或 XML schema 進行定義。盡管如此,可以這樣描述配置文件的基本結構:以開頭,后面有零個或多個元素,有零個或多個元素,有最多一個元素。

2、Logback默認配置的步驟

(1). 嘗試在 classpath 下查找文件 logback-test.xml;

(2). 如果文件不存在,則查找文件 logback.xml;

(3). 如果兩個文件都不存在,logback 用 Bas icConfigurator 自動對自己進行配置,這會導致記錄輸出到控制臺。

3、Logback.xml 文件

在src/main/resources下添加Logback.xml目錄如下:

內容如下:

<?xml version="1.0" encoding="UTF-8"?><configuration debug="false"> <!--定義日志文件的存儲地址 勿在 LogBack 的配置中使用相對路徑--> <PRoperty name="LOG_HOME" value="/test/log" /> <!-- 控制臺輸出 --> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> <!--格式化輸出:%d表示日期,%thread表示線程名,%-5level:級別從左顯示5個字符寬度%msg:日志消息,%n是換行符--> <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern> </encoder> </appender> <!-- 按照每天生成日志文件 --> <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!--日志文件輸出的文件名--> <FileNamePattern>${LOG_HOME}/TestWeb.log.%d{yyyy-MM-dd}.log</FileNamePattern> <!--日志文件保留天數--> <MaxHistory>30</MaxHistory> </rollingPolicy> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> <!--格式化輸出:%d表示日期,%thread表示線程名,%-5level:級別從左顯示5個字符寬度%msg:日志消息,%n是換行符--> <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern> </encoder> <!--日志文件最大的大小--> <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> <MaxFileSize>10MB</MaxFileSize> </triggeringPolicy> </appender> <!-- show parameters for hibernate sql 專為 Hibernate 定制 --> <logger name="org.hibernate.type.descrjava.sql.Connection" level="DEBUG"/> <logger name="java.sql.Statement" level="DEBUG"/> <logger name="java.sql.PreparedStatement" level="DEBUG"/> <!-- 日志輸出級別 --> <root level="INFO"> <appender-ref ref="STDOUT" /> <appender-ref ref="FILE" /> </root> <!--日志異步到數據庫 --> <!--<appender name="DB" class="ch.qos.logback.classic.db.DBAppender">--> <!--&lt;!&ndash;日志異步到數據庫 &ndash;&gt;--> <!--<connectionSource class="ch.qos.logback.core.db.DriverManagerConnectionSource">--> <!--&lt;!&ndash;連接池 &ndash;&gt;--> <!--<dataSource class="com.mchange.v2.c3p0.ComboPooledDataSource">--> <!--<driverClass>com.mysql.jdbc.Driver</driverClass>--> <!--<url>jdbc:mysql://127.0.0.1:3306/databaseName</url>--> <!--<user>root</user>--> <!--<passWord>root</password>--> <!--</dataSource>--> <!--</connectionSource>--> <!--</appender>--></configuration>

在程序用引用Logback:

package com.example.web;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;@RestControllerpublic class Example { private final static Logger logger = LoggerFactory.getLogger(Example.class); @RequestMapping("/") public String home() { logger.info("logback 訪問hello"); logger.error("logback 訪問hello"); return "Hello World!"; }}

通過運行程序并訪問:http://localhost:8080,可以獲得下面的日志輸出:


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久久久久久久久久免费| 国产精品日韩一区| 亚洲免费人成在线视频观看| 91av在线视频观看| 中文字幕在线观看亚洲| 欧美激情视频一区二区| 亚洲色图偷窥自拍| 亚洲成人中文字幕| 日韩女优人人人人射在线视频| 欧美一区二区视频97| 欧美裸体xxxx极品少妇| 久久资源免费视频| 国产mv久久久| 国产精品高潮呻吟久久av黑人| 日韩成人av在线| 国产精品激情av电影在线观看| 国产精品久久久久久久午夜| 欧美一区视频在线| 亚洲国产欧美在线成人app| xxx一区二区| 欧美成人全部免费| 欧美激情一级欧美精品| 欧美黄色片视频| 国产精品美女主播在线观看纯欲| 欧美成人精品不卡视频在线观看| 高清亚洲成在人网站天堂| 国产精品影院在线观看| 中国china体内裑精亚洲片| 亚洲国产精品久久久久秋霞不卡| 欧美电影电视剧在线观看| 91超碰中文字幕久久精品| www.日韩不卡电影av| 国产日韩欧美视频在线| 日韩大陆欧美高清视频区| www.日韩不卡电影av| 久久影院资源站| 亚洲男人天堂视频| 亚洲伊人第一页| 亚洲japanese制服美女| 欧美专区在线观看| 亚洲美女视频网| 日韩国产在线看| 亚洲综合第一页| 日韩电影免费在线观看| 91亚洲精品久久久久久久久久久久| 日韩在线小视频| 亚洲欧洲在线视频| 最近更新的2019中文字幕| 麻豆国产va免费精品高清在线| 亚洲小视频在线观看| 69**夜色精品国产69乱| 欧美成人在线影院| 欧美成人精品不卡视频在线观看| 97香蕉超级碰碰久久免费的优势| 欧美乱人伦中文字幕在线| 青青精品视频播放| 911国产网站尤物在线观看| 欧美日韩国产精品专区| 国产成人精品视频在线| 精品久久久国产| 在线观看中文字幕亚洲| 亚洲成色999久久网站| 欧美激情精品久久久久| 欧美精品一区二区三区国产精品| 亚洲品质视频自拍网| 久久久影视精品| www.欧美精品| 欧美电影免费观看高清完整| 美日韩在线视频| 欧美日韩激情小视频| 日韩av一区在线观看| 欧美性极品少妇精品网站| 亚洲精品综合久久中文字幕| 在线播放国产一区二区三区| 奇米一区二区三区四区久久| 青青久久av北条麻妃海外网| 成人性生交大片免费看小说| 精品亚洲国产视频| 国产在线久久久| 97在线视频一区| 精品久久久久久久久久久久久久| 亚洲欧美国产一本综合首页| 精品视频中文字幕| 日韩av中文字幕在线免费观看| 66m—66摸成人免费视频| 成人免费网视频| 亚洲精选一区二区| 精品国产鲁一鲁一区二区张丽| 日本一欧美一欧美一亚洲视频| 亚洲在线观看视频网站| 萌白酱国产一区二区| 久久久久www| 欧美丰满少妇xxxxx做受| 欧美色另类天堂2015| 国产亚洲精品美女久久久| 欧美激情第99页| 精品伊人久久97| 九九九热精品免费视频观看网站| 亚洲欧美国产制服动漫| 午夜精品久久久久久久99黑人| 欧美在线观看一区二区三区| 中文字幕亚洲图片| 国外色69视频在线观看| www高清在线视频日韩欧美| 国产精品久久久999| 国产一区二区三区在线免费观看| 精品日韩中文字幕| 国产精品老女人视频| 97超级碰碰人国产在线观看| 国产美女精品免费电影| 91欧美精品午夜性色福利在线| 精品久久久久久久久国产字幕| 性欧美xxxx视频在线观看| 国产一区二区三区视频免费| 久久久久99精品久久久久| 久久成年人视频| 久久精品这里热有精品| 欧美成人午夜激情在线| 亚洲第一偷拍网| 日本欧美爱爱爱| 成人激情综合网| 中文字幕日韩欧美在线视频| 成人有码视频在线播放| 国产亚洲日本欧美韩国| 国产成+人+综合+亚洲欧美丁香花| 国产精品18久久久久久麻辣| www.日本久久久久com.| www亚洲欧美| 两个人的视频www国产精品| 国产精品稀缺呦系列在线| 精品一区电影国产| 欧美黄色小视频| 精品久久久久久久久久| 欧美色播在线播放| 亚洲奶大毛多的老太婆| 中文字幕国产精品久久| 成人在线视频网站| 日韩视频欧美视频| 美女扒开尿口让男人操亚洲视频网站| 欧美精品午夜视频| 国产精品入口免费视| 欧美整片在线观看| 国产精品美女久久久免费| 欧美精品videosex牲欧美| 欧洲s码亚洲m码精品一区| 欧美色视频日本高清在线观看| 国内精品小视频| 91在线高清视频| 亚洲黄页网在线观看| 在线观看中文字幕亚洲| 精品久久久视频| 4438全国亚洲精品在线观看视频| 5566成人精品视频免费| 国产美女91呻吟求| 成人福利视频在线观看| 九九久久国产精品| 视频在线观看一区二区| 日韩在线免费高清视频| 国内精品久久久久久中文字幕| 国产精品永久免费观看| 国产在线视频2019最新视频| 欧美精品手机在线| 欧美丰满少妇xxxxx做受| 欧美电影院免费观看|