日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Java日志框架用法及常見問題解決方案

瀏覽:170日期:2022-08-22 18:28:37

日志定義:

在計算機領域,日志文件(logfile)是一個記錄了發生在運行中的操作系統或其他軟件中的事件的文件,或者記錄了在網絡聊天軟件的用戶之間發送的消息。

日志記錄(Logging):是指保存日志的行為。最簡單的做法是將日志寫入單個存放日志的文件。

日志級別優先級:

ALL < TRACE < DEBUG < INFO < WARN < ERROR < FATAL < OFF

日志框架的作用:

①:跟蹤用戶對系統訪問,記錄了系統行為的時間、地點、狀態等相關信息,能夠幫助我們了解并監控系統狀態

②:進行統計

③:進行Debug,在系統產生問題時,能夠幫助我們快速的定位、診斷并解決問題。

在發生錯誤或者接近某種危險狀態時能夠及時提醒我們處理

常用的日志框架類別簡介:

Log4j Apache Log4j是一個基于Java的日志記錄工具。它是由Ceki Gülcü首創的,現在則是Apache軟件基金會的一個項目。 Log4j是幾種Java日志框架之一。 Log4j 2 Apache Log4j 2是apache開發的一款Log4j的升級產品,Log4j被apache收購,升級,改為log4j2,框架改動很大,只是借用之名。 JCL (Jakarta Commons Logging) Apache基金會所屬的項目,是一套Java日志接口,之前叫Jakarta Commons Logging,后更名為Commons Logging。 Slf4j(Simple Logging Facade for Java) 類似于Commons Logging,是一套簡易Java日志門面,本身并無日志的實現。 Logback 一套日志組件的實現(slf4j陣營)。 JUL (Java Util Logging),自Java1.4以來的官方日志實現,已被淘汰。 jboss-logging 等。

Spring框架內部使用的日志框架是 JCL (Jakarta Commons Logging)

Mybatis框架中使用的是 Log4j

Hibernate框架中使用的是 jboss-logging

Springboot底層使用的是 SLF4j + Logback

(Log4j,Logback,SLF4j都是同一個作者。)

問題引入:

市場上存在非常多的日志框架。每一種日志框架都有自己單獨的API,要使用對應的框架就要使用其對應的API,這就大大的增加應用程序代碼對于日志框架的耦合性。

解決思路:

為了解決上述問題,就在日志框架和應用程序之間架設一個溝通的橋梁,對于應用程序來說,無論底層的日志框架如何變,都不需要有任何感知。只要門面服務做的足夠好,隨意換另外一個日志框架,應用程序不需要修改任意一行代碼,就可以直接上線。

在軟件開發領域有這樣一句話:計算機科學領域的任何問題都可以通過增加一個間接的中間層來解決。而門面模式就是對于這句話的典型實踐。

Logback文檔免費。Logback的所有文檔是全面免費提供的,不象Log4J那樣只提供部分免費文檔而需要用戶去購買付費文檔。Logback擁有更好的性能。

因為springboot底層使用的是 SLF4j + Logback,而且平時開發中使用頻率最高的也是此組合,所以選擇使用此組合進行日志框架的整合。

可能出現的問題:

如果我們直接暴力的排除其他日志框架,可能導致第三方庫在調用日志接口時拋出 ClassNotFound 異常,這里就需要用到中間轉換包。

中間轉換包說白了就是一種偷天換日的解決方案。比如 log4j-over-slf4j ,即 log4j -> slf4j 的轉換包,這個庫定義了與 log4j一致的接口(包名、類名、方法簽名均一致),但是接口的實現卻是對 slf4j 日志接口的包裝,即間接調用了 slf4j 日志接口,實現了對日志的轉發。

解決方案:

①:先排除其他日志包

②:在項目中引入 slf4j 的 轉換包

③:在項目中引入 slf4j+logback 依賴+ logback的配置文件

在項目中引入 slf4j的 轉換包

<!-- https://mvnrepository.com/artifact/org.slf4j/log4j-over-slf4j --><dependency><groupId>org.slf4j</groupId><artifactId>log4j-over-slf4j</artifactId><!-- 替換log4j --><version>1.7.25</version></dependency><dependency><groupId>org.slf4j</groupId><artifactId>jcl-over-slf4j</artifactId><!-- 替換commons-logging --><version>1.7.25</version></dependency><dependency><groupId>org.slf4j</groupId><artifactId>jul-to-slf4j</artifactId><!-- 替換java.util.logging --><version>1.7.25</version></dependency>

在項目中引入slf4j+logback 依賴

<dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.7.6</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.7.6</version> </dependency><dependency><groupId>ch.qos.logback</groupId><artifactId>logback-classic</artifactId><version>1.2.3</version> </dependency>

logback.xml配置文件

< ?xml version='1.0' encoding='UTF-8'?><configuration> <appender name='STDOUT' class='ch.qos.logback.core.ConsoleAppender'><encoder><pattern>%-4relative [%thread] %-5level %logger{35} - %msg %n</pattern></encoder> </appender> <root level='WARN'><appender-ref ref='STDOUT' /></root><!-- 日志:從低到高;只會打印指定級別以后的; additivity表示是否將日志信息反饋給root DEBUG==》INFO===》WARN===》ERRORAdditivity:false ,避免重復打印日志 --> <!-- 在自己的項目在中設置打印日志的級別,開發時使用--> <logger name='com.xxx.xxx' level='DEBUG' additivity='false'> <appender-ref ref='STDOUT'/> </logger> </configuration>

參考鏈接:

slf4j官網

slf4j使用手冊

logback官網

Commons Logging官網

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
久久爱www成人| 国产亚洲高清视频| 日韩一级网站| 久久免费黄色| 福利片在线一区二区| 日韩不卡一区二区| 日韩区欧美区| 亚洲欧美日韩国产一区| 秋霞影视一区二区三区| 韩国女主播一区二区三区| 国产精品国码视频| 亚洲综合三区| 欧美日韩少妇| 国产精品国产一区| 91欧美在线| 国产精品成人a在线观看| 国产精品亚洲欧美| 久久99影视| 国产精品xvideos88| 日韩福利视频导航| 亚洲免费在线| 中文字幕一区二区精品区| 黄色亚洲精品| 亚洲大全视频| 亚洲小说春色综合另类电影| 日韩影院免费视频| 欧美福利在线| 久久99视频| 国内精品美女在线观看| 麻豆精品国产91久久久久久| 国产日韩欧美在线播放不卡| 久久免费视频66| 国产一区精品福利| 国产精品国产三级国产在线观看| 卡一卡二国产精品| 国产成人精品三级高清久久91| 欧美交a欧美精品喷水| 清纯唯美亚洲综合一区| 精品国产三区在线| 欧美日韩免费观看视频| 成人午夜亚洲| 精品久久电影| 日韩精品一区二区三区免费观影| 欧美亚洲在线日韩| 欧美日韩一二| 亚洲综合日本| 欧美一区二区三区久久精品| 国产欧美91| 国内自拍视频一区二区三区| 日韩不卡在线| 中文一区一区三区免费在线观 | 亚洲一区激情| 欧美久久一区二区三区| 日韩三级一区| 国产精品久久久久77777丨| 国产拍在线视频| 九色porny丨国产首页在线| 国产伊人精品| 日韩在线视频一区二区三区| 欧美激情 亚洲a∨综合| 亚洲黄色中文字幕| 亚洲成人精选| 久久av资源| 久久久国产精品一区二区中文| 99精品99| 国产一区2区| 欧美精品黄色| 人人爱人人干婷婷丁香亚洲| 国模精品一区| 午夜欧美精品久久久久久久| 日韩国产在线不卡视频| 国产精品欧美三级在线观看| 99久久精品费精品国产| 亚洲精品三级| 福利精品在线| 日韩国产欧美三级| 国产成人精品福利| 最新亚洲一区| 中文字幕免费精品| 国产成人精品亚洲日本在线观看| 久久福利一区| 国产午夜久久av| 久久久9色精品国产一区二区三区| 99国产精品视频免费观看一公开| 久久国产精品色av免费看| 国产偷自视频区视频一区二区| 欧美日韩一区二区三区四区在线观看 | 免费在线观看精品| 久久成人福利| 欧美日韩色图| 黄色aa久久| 日本在线不卡视频一二三区| 超碰在线99| 国产剧情在线观看一区| 99久久99视频只有精品| 欧美综合精品| 日韩视频一区| 欧美日韩免费观看视频| 亚洲精品在线二区| 日韩不卡视频在线观看| 久久精品一本| 亚洲男人在线| 免费欧美一区| 日韩欧美午夜| 日韩精品第一| 九九综合九九| 中文字幕在线视频网站| 精品视频自拍| 日韩av中文字幕一区二区| 亚洲国产日韩欧美在线| 欧美日韩一区二区三区不卡视频| 欧美1区免费| 老牛国内精品亚洲成av人片| 亚洲精品在线二区| 三级精品视频| 国产福利一区二区精品秒拍 | 久久蜜桃av| 精品久久久中文字幕| 深夜日韩欧美| 伊人精品在线| 日韩电影免费网址| 久久久久久夜| 国产精品任我爽爆在线播放 | 国产精品国码视频| 伊人www22综合色| 欧美日韩视频一区二区三区| 日韩理论片av| 国产精品久久久久9999高清| 亚洲+小说+欧美+激情+另类| 视频一区国产视频| 欧美大黑bbbbbbbbb在线| 日韩在线欧美| 一区二区三区四区日本视频| 91精品韩国| 亚洲一级高清| 久久国产高清| 日韩亚洲精品在线观看| 婷婷精品久久久久久久久久不卡| 在线看片一区| 91亚洲精品视频在线观看| 国产精品最新| 国产精品久一| 黄色欧美在线| 久久精品1区| 国产精品日韩久久久| 男女男精品视频网| 日韩av一二三| 精品淫伦v久久水蜜桃| 黑森林国产精品av| 女同性一区二区三区人了人一| 性欧美精品高清| 一区二区三区午夜视频| 日韩av成人高清| 麻豆一区二区99久久久久| 国产成人精品亚洲线观看| 久久九九电影| 午夜一级久久| 国产日产精品_国产精品毛片 | 欧美一区免费| 国产精品毛片久久| 日本久久成人网| 男女性色大片免费观看一区二区 | 久久精品动漫| 视频精品一区二区| 国产日韩欧美一区| 中文字幕人成乱码在线观看| 一区在线视频观看| 久久国产精品免费精品3p| 精品欧美日韩精品| 亚洲成人三区| 日韩国产在线观看一区| 久久电影tv| 蜜臀精品久久久久久蜜臀| 久久精品亚洲一区二区| 国产在线不卡| 日本一区二区三区视频在线看| 久久在线91| 香蕉国产精品| 欧美激情日韩| 亚州av乱码久久精品蜜桃| 久久精品超碰| 亚洲日本网址| 日韩激情一二三区| 日韩毛片在线| 日本国产一区| 色在线视频观看| 综合五月婷婷| 丝袜美腿诱惑一区二区三区| 四虎国产精品免费久久| 黄在线观看免费网站ktv| 日韩专区欧美专区| 日韩av专区| 亚洲精品欧美| 日韩精品一卡| 久久av网站| 亚洲丝袜美腿一区| 久久精品动漫| 麻豆精品一区二区综合av| 久久国产精品亚洲77777| 国产不卡精品|