中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java中日志的示例分析

發布時間:2021-11-24 17:51:03 來源:億速云 閱讀:173 作者:小新 欄目:大數據

小編給大家分享一下Java中日志的示例分析,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

   

Log4j

Log4j 的全稱為 Log for java,即專門用于 Java 語言的日志記錄工具。

日志級別

為了方便對于日志信息的輸出顯示,對日志內容進行了分級管理。日志級別由高到低,共分 6 個級別:

fatal(致命的)

error

warn

info

debug

trace(堆棧)

日志屬性配置文件

日志屬性文件 log4j.properties 是專門用于控制日志輸出的。其主要進行三方面控制:

輸出位置:控制日志將要輸出的位置,是控制臺還是文件等。

輸出布局:控制日志信息的顯示形式。

輸出級別:控制要輸出的日志級別。

日志屬性文件由兩個對象組成:日志附加器與根日志。

根日志,即為 Java 代碼中的日志記錄器,其主要由兩個屬性構成:日志輸出級別與日志附加器。

日志附加器,則由日志輸出位置定義,由其它很多屬性進行修飾,如輸出布局、文件位置、文件大小等。

所謂日志附加器,就是為日志記錄器附加上很多其它設置信息。附加器的本質是一個接口,其定義語法為:log4j.appender.appenderName = 輸出位置

常用的附加器實現類

org.apache.log4j.ConsoleAppender:日志輸出到控制臺

org.apache.log4j.FileAppender:日志輸出到文件

org.apache.log4j.RollingFileAppender:當日志文件大小到達指定尺寸的時候將產生一個新的日志文件

org.apache.log4j.DailyRollingFileAppender:每天產生一個日志文件

org.apache.log4j.HTMLLayout:網頁布局,以 HTML 表格形式布局

org.apache.log4j.SimpleLayout:簡單布局,包含日志信息的級別和信息字符串

org.apache.log4j.PatternLayout:匹配器布局,可以靈活地指定布局模式。其主要是通過設置

ConversionPattern格式輸出

PatternLayout 的 ConversionPattern 屬性值來控制具體輸出格式的 。

打印參數: Log4J 采用類似 C 語言中的 printf 函數的打印格式格式化日志信息

%m:輸出代碼中指定的消息

%p:輸出優先級,即 DEBUGINFOWARNERRORFATAL

%r:輸出自應用啟動到輸出該 log 信息耗費的毫秒數

%c:輸出所屬的類目,通常就是所在類的全名

%t:輸出產生該日志事件的線程名

%n:輸出一個回車換行符,Windows 平臺為 /r/n,Unix 平臺為 /n

%d:輸出日志時間點的日期或時間,默認格式為 ISO8601,也可以在其后指定格式,比如:%d{yyy MMM dd HH:mm:ss , SSS},輸出類似:2002年10月18日 22:10:28,921

%l:輸出日志事件的發生位置,包括類目名、發生的線程,以及在代碼中的行數。舉例:Testlog4.main(TestLog4.java: 10 )

在 src/main/resources 目錄下創建名為 log4j.properties 的屬性配置文件

日志配置相關說明:

log4j.rootLogger:根日志,配置了日志級別為 INFO,預定義了名稱為 console、file 兩種附加器
log4j.appender.console:console 附加器,日志輸出位置在控制臺
log4j.appender.console.layout:console 附加器,采用匹配器布局模式
log4j.appender.console.layout.ConversionPattern:console 附加器,日志輸出格式為:日期 日志級別 [類名] - 消息換行符
log4j.appender.file:file 附加器,每天產生一個日志文件
log4j.appender.file.File:file 附加器,日志文件輸出位置 logs/log.log
log4j.appender.file.layout:file 附加器,采用匹配器布局模式
log4j.appender.A3.MaxFileSize:日志文件最大值
log4j.appender.A3.MaxBackupIndex:最多紀錄文件數
log4j.appender.file.layout.ConversionPattern:file 附加器,日志輸出格式為:日期 日志級別 [類名] - 消息換行符

slf4j

slf4j 的全稱是 Simple Loging Facade For Java,即它僅僅是一個為 Java 程序提供日志輸出的統一接口,并不是一個具體的日志實現方案,就比如 JDBC 一樣,只是一種規則而已。所以單獨的 slf4j 是不能工作的,必須搭配其他具體的日志實現方案。

占位符說明

打日志的時候使用了 {} 占位符,這樣就不會有字符串拼接操作,減少了無用 String 對象的數量,節省了內存。并且,記住,在生產最終日志信息的字符串之前,這個方法會檢查一個特定的日志級別是不是打開了,這不僅降低了內存消耗而且預先降低了 CPU 去處理字符串連接命令的時間。

日志命名和保持期限

在公開的阿里巴巴 java 開發手冊中對日志規范也有相關介紹,在此,筆者介紹其中兩條規范,即日志命名方式和日志保存期限。

  • 日志命名方式:

其中 appName 表示應用名;logType 表示日志類型,推薦分類有 stats,monitor,visit 等;logName 為日志描述,這種命名好處是可以快速清晰地了解日志文件類型和目的,便于歸類查找。

  • 日志保持期限:

如何確定日志保持期限是個比較棘手的問題,如果日志存放時間過長,會消耗大量存儲資源,甚至會導致磁盤壓力過大影響系統穩定性;如果日志存放時間過短,可能導致日志數據“丟失”,出現問題時無法追溯。阿里  java 開發手冊中對日志文件保存期限的建議是至少保存 15  天。在實際應用中,可以根據日志文件的重要程度、文件大小以及磁盤空間自行調整,此外,還可以對日志進行監控,定期轉儲。

以上是“Java中日志的示例分析”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

中西区| 涪陵区| 平南县| 璧山县| 友谊县| 新兴县| 鲁山县| 德阳市| 南雄市| 桂林市| 闵行区| 怀宁县| 门头沟区| 麻江县| 柘城县| 东丰县| 临西县| 安康市| 镇平县| 邢台市| 揭西县| 奉新县| 南涧| 二连浩特市| 尉氏县| 那曲县| 哈密市| 大余县| 陆河县| 湟中县| 达日县| 巴林右旗| 仪征市| 永康市| 保定市| 绍兴县| 双鸭山市| 土默特左旗| 江源县| 芷江| 长寿区|