日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

log4j简介及应用

發布時間:2023/12/9 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 log4j简介及应用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、介紹?

Log4j是Apache的一個開放源代碼項目,通過使用Log4j,我們可以控制日志信息輸送的目的地是控制臺、文件、GUI組件、甚至是套接口服務 器、NT的事件記錄器、UNIX Syslog守護進程等;我們也可以控制每一條日志的輸出格式;通過定義每一條日志信息的級別,我們能夠更加細致地控制日志的生成過程。?Log4j由三個重要的組件構成:日志信息的優先級,日志信息的輸出目的地,日志信息的輸出格式。日志信息的優先級從高到低有ERROR、WARN、 INFO、DEBUG,分別用來指定這條日志信息的重要程度;日志信息的輸出目的地指定了日志將打印到控制臺還是文件中;而輸出格式則控制了日志信息的顯示內容。

?

log4j的歷史

?

  • 始于1996年初的E.U. SEMPER?(安全電子市場為歐洲)跟蹤API的項目。

  • 不計其數的改進,在幾個大量的工作之后,API已經發展成為log4j,一個流行的日志記錄包為Java。

  • 該軟件包是Apache軟件許可證,由開源認證是一個不折不扣的開源許可證下發布。

  • 最新log4j的版本,包括完整的源代碼,類文件和文檔可以在這里找到?http://logging.apache.org/log4j/.

?

Log4j使用的幾個關鍵點?

根記錄器(Logger),輸出端(appenders)和布局(layouts)

a)定義根記錄器的格式為

log4j.rootLogger?=?[?level?],?appendName1,?appendName2,??appendNameN。同一個記錄器可

有多個輸出端。PS:level的級別(此級別可以自定義,系統默認提供了以下級別)?

◆debug//調試信息

◆info//一般信息

◆warn//警告信息

◆error//錯誤信息

◆fatal//致命錯誤信

b)定義一個appender的輸出目的地的格式為

log4j.appender.appenderName?=?fully.qualified.name.of.appender.class。log4j

提供了以下幾種常用的輸出目的地:

◆org.apache.log4j.ConsoleAppender,將日志信息輸出到控制臺

◆org.apache.log4j.FileAppender,將日志信息輸出到一個文件?

◆org.apache.log4j.DailyRollingFileAppender,將日志信息輸出到一個,并且每天輸出到一個新的日志文件

◆org.apache.log4j.RollingFileAppender,將日志信息輸出到一個文件,通過指定文件的的尺寸,當文件大小到達指定尺寸的時候會自動把文件改名,如為example.log的文件會改名為example.log.1,同時產生一個新的example.log文件。如果新的文件再次達到指定尺寸,又會自動把文件改名為example.log.2,同時產生example.log文件。依此類推,直到example.log.?MaxBackupIndex,MaxBackupIndex的值可在配置文件中定義。

◆org.apache.log4j.WriterAppender,將日志信息以流格式發送到任意指定的地方。

◆org.apache.log4j.jdbc.JDBCAppender,通過JDBC把日志信息輸出到數據庫中。

c)輸出格式(布局)layout?Log4j

提供了一下幾種布局:

◆org.apache.log4j.HTMLLayout,以HTML表格形式布局

◆org.apache.log4j.PatternLayout,可以靈活地指定布局模式

◆org.apache.log4j.SimpleLayout,包含日志信息的級別和信息字符串

PS:ConversionPattern參數的格式含義?

%c?輸出日志信息所屬的類的全名?

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

%f?輸出日志信息所屬的類的類名

%l?輸出日志事件的發生位置,即輸出日志信息的語句處于它所在的類的第幾行

%m?輸出代碼中指定的信息,如log(message)中的message?

%n?輸出一個回車換行符,Windows平臺為“\r\n”,Unix平臺為“\n”

%p?輸出優先級,即DEBUG,INFO,WARN,ERROR,FATAL。如果是調用debug()輸出的,則為DEBUG,依此類推

%r?輸出自應用啟動到輸出該日志信息所耗費的毫秒數

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

?

log4j 特性:

  • log4j的是線程安全的

  • log4j是經過優化速度的

  • log4j是基于一個名為記錄器的層次結構

  • log4j的支持每個記錄器多輸出追加器(appender)

  • log4j支持國際化。

  • log4j并不限于一組預定義的設備

  • 日志行為可以使用配置文件在運行時設置

  • log4j設計從一開始就是處理Java異常

  • log4j使用多個層次,即ALL,TRACE,DEBUG,INFO,WARN,ERROR和FATAL

  • 日志輸出的格式可以通過擴展Layout類容易地改變

  • 日志輸出的目標,以及在寫入策略可通過實現Appender程序接口改變

  • log4j 會故障停止。然而,盡管它肯定努力確保傳遞,log4j不保證每個日志語句將被傳遞到目的地。

?

?

?

轉載于:https://www.cnblogs.com/yhsj/p/4909989.html

總結

以上是生活随笔為你收集整理的log4j简介及应用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。