成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

今天又學了 Spring Boot logging,你學會了嗎?

開發 前端
spring boot 內部使用的是 apache 開源的 commons logging 來記錄日志的。但是呢,它又提供了基礎的日志實現接口,方便向 java util logging、 log4j、logback之類的接入。spring boot 現在已經為 Java util logging 、log4j2、logback 提供了默認的實現。我們如果需要使用的話,只要簡單配置就可以了。

大家好,我是指北君。

今天指北君將要帶實習生來了解下 Spring Boot 中日志框架的使用。

實習生:大佬好,今天你要講什么呀?

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

圖片

今天就從這幾個角度來講。

實習生:好的,那我們先來看看概述吧。

圖片

指北君:spring boot 內部使用的是 apache 開源的 commons logging 來記錄日志的。但是呢,它又提供了基礎的日志實現接口,方便向 java util logging、 log4j、logback之類的接入。spring boot 現在已經為 Java util logging 、log4j2、logback 提供了默認的實現。我們如果需要使用的話,只要簡單配置就可以了。

實習生:要這么說的話,spring boot 可真nb啊,輕輕松松就搞定了。你剛剛說了 spring boot 已經內置實現了 logback 這些, 那我看你圖里還有starter的描述啊,默認所有的都夾在進來了嗎?

指北君:小伙子可以啊,spring boot 當然沒有把所有的都加載進來,條件自動化配置你忘記了嗎?如果我們項目只依賴了一個 spring-boot-starter 的話,你看我這個項目的依賴圖,自由這么幾個,如果你想依賴 log4j2 的話,你要添加 spring-boot-starter-log4j2 才行。

圖片

實習生:soga, 我懂了。

指北君:我們來看看日志的輸出格式是怎么樣的。我們平時啟動項目的時候,在控制臺上看到的這些內容,是有固定的格式的。

圖片

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

圖片

實習生:這個挺簡單的呀。你這么一畫,我感覺很清晰啊。你看這個終端輸出那里有不同的顏色,這個是怎么配置的呢?

指北君:不要著急啊, 你看我的思維導圖,下一個環節不就是要講了嗎?

圖片

默認情況下,spring boot 項目的日志輸出方式是控制臺輸出??刂婆_輸出一般情況下只有3中輸出方式,就是上面寫的 ERROR、WARN、INFO。因為打開debug的話,所有其他的日志都會打出來,對我們開發來說不太方便。

實習生:那這個還是可以打開的吧,或者我想調試spring boot 的啟動過程之類的,我就想把它打開,這樣我對啟動過程可以看的更加清楚一些。

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

java -jar myapp.jar --debug

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

application.properties 配置 debug=true

至于,剛才你說到的顏色問題,其實也蠻簡單的,如果你的控制臺支持 ASNI 的話,就配置一下就可以了,主要是配置%clr 這個輕輕松松搞定了。直接看思維導圖就行了。

實習生:你說的沒錯,但是我還有一個疑問,ASNI是什么?

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

ANSI是一種字符代碼,為使計算機支持更多語言,通常使用 0x00~0x7f 范圍的1 個字節來表示 1 個英文字符。超出此范圍的使用0x80~0xFFFF來編碼,即擴展的ASCII編碼。

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

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

實習生:這個我知道,但是你導圖上寫的文件分割,又是怎么回事呢?

圖片

指北君:這個你都沒懂嗎?我們日志寫入到文件里之后,如果我們不處理的話,文件可以把你電腦寫爆了。另一方面,方便我們處理日志文件啊。

實習生:好的,大佬我錯了。我怎么沒想到呢。

指北君:別扯這些,我們繼續來看。

圖片

實習生:你這個寫的啥意思啊?沒懂,上面不是講過了,再講一遍?

指北君:上面只是提了下等級,并沒有提怎么設置,你看仔細了,我們可以針對某個package來設置日志輸出的等級。

實習生:唉,這個我怎么沒想到呢,可以單獨設置。我之前看項目我都沒注意到這個問題。

指北君:沒關系,現在不是已經知道了嗎?我們繼續吧。

圖片

實習生:好的,大佬,你這里寫的日志關閉hook是干啥的?

指北君:其實這個就像我們spring boot 怎么做到優雅停機一樣。我們要做到先把日志打印入口先關閉了,然后把打印的日志打印完,我再結束我這個日志打印的線程。

實習生:你這么說我就明白了。

指北君:上面講述的都是通過配置spring boot 默認實現的方式來配置日志,我們還可以自己個性化配置日志輸出的情況。在這我們以前spring 項目的時候,是很常見的。我們現在也一直在延續使用這種方式。

圖片

實習生:那你這個最后那個環節 也是和這個自定義配置有關了吧

圖片

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

<springProfile name="dev | staging">
...
</springProfile>

另外一個是怎么引入 sping的環境變量。

<springProperty scope="context" name="fluentHost" source="myapp.fluentd.host"
defaultValue="localhost"/>
<appender name="FLUENT" class="ch.qos.logback.more.appenders.DataFluentAppender">
<remoteHost>${fluentHost}</remoteHost>
...
</appender>

實習生:hoho,可以啊,這操作不錯。

總結

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

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

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

責任編輯:武曉燕 來源: Java技術指北
相關推薦

2022-07-11 09:00:37

依賴配置文件Mybati

2024-01-02 07:04:23

2023-11-06 07:25:51

Spring配置應用程序

2022-06-27 08:16:34

JSON格式序列化

2022-04-26 08:41:54

JDK動態代理方法

2024-01-19 08:25:38

死鎖Java通信

2024-02-04 00:00:00

Effect數據組件

2023-07-26 13:11:21

ChatGPT平臺工具

2023-01-10 08:43:15

定義DDD架構

2023-05-05 08:29:15

Spring后臺服務器

2023-08-01 12:51:18

WebGPT機器學習模型

2024-01-02 12:05:26

Java并發編程

2024-03-04 07:41:18

SpringAOPOOP?

2023-10-10 11:04:11

Rust難點內存

2024-05-06 00:00:00

InnoDBView隔離

2024-07-31 08:39:45

Git命令暫存區

2023-01-30 09:01:54

圖表指南圖形化

2022-07-08 09:27:48

CSSIFC模型

2023-12-12 08:02:10

2024-08-06 09:47:57

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 一级做a | 天天舔天天 | 黄色视频a级毛片 | 狠狠做深爱婷婷综合一区 | 国产激情| 国产精品亚洲欧美日韩一区在线 | 亚洲精品一区二区冲田杏梨 | av资源网站| 国产精品久久 | 国产欧美日韩久久久 | 天堂资源最新在线 | 婷婷丁香在线视频 | 日韩欧美一区二区三区免费观看 | 国产一区二 | 中文亚洲视频 | 国产激情偷乱视频一区二区三区 | 久久久国产一区二区三区四区小说 | 黄色成人国产 | 日韩一级电影免费观看 | 国产精品无码久久久久 | 日韩一区二区三区在线视频 | 亚洲精品视 | 久久久久久久久精 | 日本精品视频一区二区三区四区 | 亚洲视频二区 | 国产精品揄拍一区二区久久国内亚洲精 | 成人免费大片黄在线播放 | 久久久久久久综合 | 国产我和子的乱视频网站 | 国产免费xxx | av中文字幕在线播放 | 91久久国产综合久久91精品网站 | 精品美女久久久久久免费 | 日本午夜免费福利视频 | 亚洲日韩中文字幕一区 | 久久久精品视频免费看 | 午夜在线视频 | 久久久久无码国产精品一区 | 国产一区二区三区网站 | 欧美精品99 | 四虎成人免费电影 |