摘要:不過(guò)官網(wǎng)推薦使用的方式,因?yàn)榭梢允褂酶呒?jí)特性動(dòng)態(tài)使用日志配置。測(cè)試控制臺(tái)輸出指定環(huán)境
Spring boot日志介紹 1.1 常用的日志框架分為接口庫(kù)和實(shí)現(xiàn)庫(kù) 1.2 spring 的日志介紹
spring框架默認(rèn)選擇的是JCL
spring boot框架默認(rèn)選擇的是SLF4j + Logback
1.3 SLF4J的使用案例:
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"); } }1.3.1與其他實(shí)現(xiàn)庫(kù)整合圖(官網(wǎng)): 1.3.2 如何解決多個(gè)框架默認(rèn)日志不統(tǒng)一的問(wèn)題?
第一步:排除其他日志框架
第二步:使用中間包替換原有日志包
第三步:導(dǎo)入slf4j實(shí)現(xiàn)包
1.4 spring boot + slf4j+Logback1.4.1 在哪排除其他框架的默認(rèn)日志包org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter org.springframework.boot spring-boot-starter-logging
排除spring 使用的commons-logging
1.4.2 使用中間包替換原有日志包 1.4.3 spring boot日志配置org.springframework spring-core commons-logging commons-logging
spring boot默認(rèn)級(jí)別為info
@RunWith(SpringRunner.class) @SpringBootTest public class ApplicationTests { private Logger logger = LoggerFactory.getLogger(ApplicationTests.class); @Test public void logTest() { logger.trace("--This is trace log"); logger.debug("-- --This is debug log"); logger.info("-- -- --This is info log"); logger.warn("-- -- -- --This is warn log"); logger.error("-- -- -- -- --This is error log"); } }
運(yùn)行結(jié)果:
: -- -- --This is info log
: -- -- -- --This is warn log
: -- -- -- -- --This is error log
簡(jiǎn)單配置案例
#設(shè)置日志有顏色的輸出 spring: output: ansi: enabled: always #日志配置 logging: #日志級(jí)別設(shè)置 level: #指定包生效 com.lvmama: debug #日志文件路徑(當(dāng)前工程根目錄下spring.log) path: /log/springboot
spring boot 其他日志配置
logging.file logging.file.max-size logging.file.max-history logging.path logging.pattern.console logging.pattern.dateformat logging.pattern.file logging.pattern.level PID1.4.4 自定義日志配置
When possible, we recommend that you use the?-spring?variants for your logging configuration (for example,?logback-spring.xml?rather than?logback.xml). If you use standard configuration locations, Spring cannot completely control log initialization.
在resource目錄下添加指定的log.xml,spring boot默認(rèn)只用自定義的日志配置,如logback在resource目錄下添加logback.xml或logback-spring.xml即可。不過(guò)官網(wǎng)推薦使用logback-spring的方式,因?yàn)榭梢允褂?springProfile>高級(jí)特性,動(dòng)態(tài)使用日志配置。
Because the standard?logback.xml?configuration file is loaded too early, you cannot use extensions in it. You need to either use?logback-spring.xmlor define a?logging.config?property.
測(cè)試:
%d{yyyy-MM-dd HH:mm:ss.SSS} ---dev--- [%thread] - %-5level %logger{50} - %msg%n %d{yyyy-MM-dd HH:mm:ss.SSS} - [%thread] - %-5level %logger{50} - %msg%n
mvn spring-boot:run
控制臺(tái)輸出:
2018-05-20 17:55:44.708 - [main] - INFO com.lvmama.SpringBootInstaller - Starting SpringBootInstaller on 28H5EO7ZV2V7ELK with PID 4288 (D:workspacespring-boot argetclasses started by Administrator in D:workspacespring-boot) 2018-05-20 17:55:44.732 - [main] - DEBUG com.lvmama.SpringBootInstaller - Running with Spring Boot v1.5.14.BUILD-SNAPSHOT, Spring v4.3.17.RELEASE 2018-05-20 17:55:44.733 - [main] - INFO com.lvmama.SpringBootInstaller - No active profile set, falling back to default profiles: default 2018-05-20 17:55:45.224 - [background-preinit] - INFO org.hibernate.validator.internal.util.Version - HV000001: Hibernate Validator 5.3.6.Final 2018-05-20 17:55:48.158 - [main] - INFO org.apache.coyote.http11.Http11NioProtocol - Initializing ProtocolHandler ["http-nio-8080"] 2018-05-20 17:55:48.236 - [main] - INFO org.apache.catalina.core.StandardService - Starting service [Tomcat]
mvn spring-boot:run -Drun.profiles=dev //指定dev環(huán)境 ?
2018-05-20 17:59:25.500 ---dev--- [main] - INFO com.lvmama.SpringBootInstaller - Starting SpringBootInstaller on 28H5EO7ZV2V7ELK with PID 2880 (D:workspacespring-boot argetclasses started by Administrator in D:workspacespring-boot) 2018-05-20 17:59:25.505 ---dev--- [main] - DEBUG com.lvmama.SpringBootInstaller - Running with Spring Boot v1.5.14.BUILD-SNAPSHOT, Spring v4.3.17.RELEASE 2018-05-20 17:59:25.506 ---dev--- [main] - INFO com.lvmama.SpringBootInstaller - The following profiles are active: dev 2018-05-20 17:59:26.007 ---dev--- [background-preinit] - INFO org.hibernate.validator.internal.util.Version - HV000001: Hibernate Validator 5.3.6.Final 2018-05-20 17:59:27.749 ---dev--- [main] - INFO org.apache.coyote.http11.Http11NioProtocol - Initializing ProtocolHandler ["http-nio-8080"] 2018-05-20 17:59:27.769 ---dev--- [main] - INFO org.apache.catalina.core.StandardService - Starting service [Tomcat]
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/69505.html
摘要:作為微服務(wù)的基礎(chǔ)設(shè)施之一,背靠強(qiáng)大的生態(tài)社區(qū),支撐技術(shù)體系。微服務(wù)實(shí)踐為系列講座,專題直播節(jié),時(shí)長(zhǎng)高達(dá)小時(shí),包括目前最流行技術(shù),深入源碼分析,授人以漁的方式,幫助初學(xué)者深入淺出地掌握,為高階從業(yè)人員拋磚引玉。 簡(jiǎn)介 目前業(yè)界最流行的微服務(wù)架構(gòu)正在或者已被各種規(guī)模的互聯(lián)網(wǎng)公司廣泛接受和認(rèn)可,業(yè)已成為互聯(lián)網(wǎng)開(kāi)發(fā)人員必備技術(shù)。無(wú)論是互聯(lián)網(wǎng)、云計(jì)算還是大數(shù)據(jù),Java平臺(tái)已成為全棧的生態(tài)體系,...
摘要:使用還是,根據(jù)個(gè)人喜好即可。如果錯(cuò)誤頁(yè)面也需要使用模板引擎動(dòng)態(tài)生成,那么放在下面的路徑。數(shù)據(jù)庫(kù)自動(dòng)配置嵌入式數(shù)據(jù)庫(kù)如果類路徑中包含或的相應(yīng)包,那么就會(huì)自動(dòng)配置這些嵌入式數(shù)據(jù)庫(kù)的實(shí)例和數(shù)據(jù)源。 本文參考自Spring Boot文檔。 Spring Boot 簡(jiǎn)介 Spring框架功能很強(qiáng)大,但是就算是一個(gè)很簡(jiǎn)單的項(xiàng)目,我們也要配置很多東西。因此就有了Spring Boot框架,它的作用很...
摘要:引入了新的環(huán)境和概要信息,是一種更揭秘與實(shí)戰(zhàn)六消息隊(duì)列篇掘金本文,講解如何集成,實(shí)現(xiàn)消息隊(duì)列。博客地址揭秘與實(shí)戰(zhàn)二數(shù)據(jù)緩存篇掘金本文,講解如何集成,實(shí)現(xiàn)緩存。 Spring Boot 揭秘與實(shí)戰(zhàn)(九) 應(yīng)用監(jiān)控篇 - HTTP 健康監(jiān)控 - 掘金Health 信息是從 ApplicationContext 中所有的 HealthIndicator 的 Bean 中收集的, Spring...
閱讀 2574·2021-10-19 11:41
閱讀 2415·2021-09-01 10:32
閱讀 3377·2019-08-29 15:21
閱讀 1755·2019-08-29 12:20
閱讀 1161·2019-08-29 12:13
閱讀 599·2019-08-26 12:24
閱讀 2520·2019-08-26 10:26
閱讀 827·2019-08-23 18:40