日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
今天又學(xué)了SpringBootlogging,你學(xué)會(huì)了嗎?

大家好,我是指北君。

在桐柏等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì) 網(wǎng)站設(shè)計(jì)制作按需策劃,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站制作,營(yíng)銷型網(wǎng)站,成都外貿(mào)網(wǎng)站建設(shè),桐柏網(wǎng)站建設(shè)費(fèi)用合理。

今天指北君將要帶實(shí)習(xí)生來(lái)了解下 Spring Boot 中日志框架的使用。

實(shí)習(xí)生:大佬好,今天你要講什么呀?

指北君:今天跟你講講 Spring Boot 日志是怎么回事的,先看下我整理的思維導(dǎo)圖吧。

今天就從這幾個(gè)角度來(lái)講。

實(shí)習(xí)生:好的,那我們先來(lái)看看概述吧。

指北君:spring boot 內(nèi)部使用的是 apache 開源的 commons logging 來(lái)記錄日志的。但是呢,它又提供了基礎(chǔ)的日志實(shí)現(xiàn)接口,方便向 java util logging、 log4j、logback之類的接入。spring boot 現(xiàn)在已經(jīng)為 Java util logging 、log4j2、logback 提供了默認(rèn)的實(shí)現(xiàn)。我們?nèi)绻枰褂玫脑?,只要?jiǎn)單配置就可以了。

實(shí)習(xí)生:要這么說(shuō)的話,spring boot 可真nb啊,輕輕松松就搞定了。你剛剛說(shuō)了 spring boot 已經(jīng)內(nèi)置實(shí)現(xiàn)了 logback 這些, 那我看你圖里還有starter的描述啊,默認(rèn)所有的都夾在進(jìn)來(lái)了嗎?

指北君:小伙子可以啊,spring boot 當(dāng)然沒(méi)有把所有的都加載進(jìn)來(lái),條件自動(dòng)化配置你忘記了嗎?如果我們項(xiàng)目只依賴了一個(gè) spring-boot-starter 的話,你看我這個(gè)項(xiàng)目的依賴圖,自由這么幾個(gè),如果你想依賴 log4j2 的話,你要添加 spring-boot-starter-log4j2 才行。

實(shí)習(xí)生:soga, 我懂了。

指北君:我們來(lái)看看日志的輸出格式是怎么樣的。我們平時(shí)啟動(dòng)項(xiàng)目的時(shí)候,在控制臺(tái)上看到的這些內(nèi)容,是有固定的格式的。

一開始是日期和時(shí)間,然后是日志的等級(jí)、線程ID、分割線、線程名稱、logger name 、日志消息。我在思維導(dǎo)圖里做了歸納, 日志等級(jí)這里我使用的是logback的等級(jí)制度,部分其他的會(huì)是以FATAL 代替 ERROR 的。

實(shí)習(xí)生:這個(gè)挺簡(jiǎn)單的呀。你這么一畫,我感覺(jué)很清晰啊。你看這個(gè)終端輸出那里有不同的顏色,這個(gè)是怎么配置的呢?

指北君:不要著急啊, 你看我的思維導(dǎo)圖,下一個(gè)環(huán)節(jié)不就是要講了嗎?

默認(rèn)情況下,spring boot 項(xiàng)目的日志輸出方式是控制臺(tái)輸出。控制臺(tái)輸出一般情況下只有3中輸出方式,就是上面寫的 ERROR、WARN、INFO。因?yàn)榇蜷_debug的話,所有其他的日志都會(huì)打出來(lái),對(duì)我們開發(fā)來(lái)說(shuō)不太方便。

實(shí)習(xí)生:那這個(gè)還是可以打開的吧,或者我想調(diào)試spring boot 的啟動(dòng)過(guò)程之類的,我就想把它打開,這樣我對(duì)啟動(dòng)過(guò)程可以看的更加清楚一些。

指北君:是的,你可以打開,而且也挺方便的。有兩種方式,第一種方式就是通過(guò)命令行設(shè)置

java -jar myapp.jar --debug

第二種:在配置文件里直接配置就行

application.properties 配置 debug=true

至于,剛才你說(shuō)到的顏色問(wèn)題,其實(shí)也蠻簡(jiǎn)單的,如果你的控制臺(tái)支持 ASNI 的話,就配置一下就可以了,主要是配置%clr 這個(gè)輕輕松松搞定了。直接看思維導(dǎo)圖就行了。

實(shí)習(xí)生:你說(shuō)的沒(méi)錯(cuò),但是我還有一個(gè)疑問(wèn),ASNI是什么?

指北君:這玩意就是一種編碼方式,一句兩句也講不清楚,我給你搜索一下吧。

ANSI是一種字符代碼,為使計(jì)算機(jī)支持更多語(yǔ)言,通常使用 0x00~0x7f 范圍的1 個(gè)字節(jié)來(lái)表示 1 個(gè)英文字符。超出此范圍的使用0x80~0xFFFF來(lái)編碼,即擴(kuò)展的ASCII編碼。

指北君:接下來(lái)我們看看文件輸出日志的配置,默認(rèn)情況下我們只要在applicaiton.properties文件直接配置就行了。

logging.file.name=app.log
logging.file.path=/xxx

實(shí)習(xí)生:這個(gè)我知道,但是你導(dǎo)圖上寫的文件分割,又是怎么回事呢?

指北君:這個(gè)你都沒(méi)懂嗎?我們?nèi)罩緦懭氲轿募镏?,如果我們不處理的話,文件可以把你電腦寫爆了。另一方面,方便我們處理日志文件啊。

實(shí)習(xí)生:好的,大佬我錯(cuò)了。我怎么沒(méi)想到呢。

指北君:別扯這些,我們繼續(xù)來(lái)看。

實(shí)習(xí)生:你這個(gè)寫的啥意思???沒(méi)懂,上面不是講過(guò)了,再講一遍?

指北君:上面只是提了下等級(jí),并沒(méi)有提怎么設(shè)置,你看仔細(xì)了,我們可以針對(duì)某個(gè)package來(lái)設(shè)置日志輸出的等級(jí)。

實(shí)習(xí)生:唉,這個(gè)我怎么沒(méi)想到呢,可以單獨(dú)設(shè)置。我之前看項(xiàng)目我都沒(méi)注意到這個(gè)問(wèn)題。

指北君:沒(méi)關(guān)系,現(xiàn)在不是已經(jīng)知道了嗎?我們繼續(xù)吧。

實(shí)習(xí)生:好的,大佬,你這里寫的日志關(guān)閉hook是干啥的?

指北君:其實(shí)這個(gè)就像我們spring boot 怎么做到優(yōu)雅停機(jī)一樣。我們要做到先把日志打印入口先關(guān)閉了,然后把打印的日志打印完,我再結(jié)束我這個(gè)日志打印的線程。

實(shí)習(xí)生:你這么說(shuō)我就明白了。

指北君:上面講述的都是通過(guò)配置spring boot 默認(rèn)實(shí)現(xiàn)的方式來(lái)配置日志,我們還可以自己個(gè)性化配置日志輸出的情況。在這我們以前spring 項(xiàng)目的時(shí)候,是很常見的。我們現(xiàn)在也一直在延續(xù)使用這種方式。

實(shí)習(xí)生:那你這個(gè)最后那個(gè)環(huán)節(jié) 也是和這個(gè)自定義配置有關(guān)了吧

指北君:你小子眼睛還挺尖的啊,我這里主要是說(shuō)明兩個(gè)東西,一個(gè)是 spring boot profiles在日志文件中的應(yīng)用。


...

另外一個(gè)是怎么引入 sping的環(huán)境變量。

        defaultValue="localhost"/>

${fluentHost}
...

實(shí)習(xí)生:hoho,可以啊,這操作不錯(cuò)。

總結(jié)

指北君今天就是帶大家過(guò)一遍 spring boot logging 是什么一回事,怎么配置使用的。

本文的所有示例源代碼和完整的思維導(dǎo)圖都已上傳到了 Github:

https://github.com/javatechnorth/java-north-sample


新聞標(biāo)題:今天又學(xué)了SpringBootlogging,你學(xué)會(huì)了嗎?
標(biāo)題來(lái)源:http://m.5511xx.com/article/dhpjojd.html