跳至內容

Log四j

出自Taiwan Tongues 台語維基
於 2025年8月22日 (五) 20:33 由 TaiwanTonguesApiRobot留言 | 貢獻 所做的修訂 (從 JSON 檔案批量匯入)

(差異) ←上個修訂 | 已批准修訂 (差異) | 最新修訂 (差異) | 下個修訂→ (差異)

Apache Log 四 j是一个是對 Java 的紀錄檔記錄工具。伊是由瑞士程式設計師 Ceki Gülcü 佇二空空一年開發的,這馬著 Apache 軟體基金會的一个案。Log 四 j 是幾種 Java 紀錄檔框殼之一。

Gülcü 此後開創 SLF 四 J 和 Logback 專案,想欲變成按呢 Log 四 j 的繼任者。

Log 四 j 團隊建立了 Log 四 j 的繼任者,版本號做二孵空的新版本。Log 四 j 二鋪零是誠重 Log 四 j 一孵二、一孵三、java . util . logging 和 logback 中的問題,閣解決遮的框架中的架構問題。此外,Log 四 j 二嬸零提供一个外掛程式架構,這會當閣較會當延伸。Log 四 j 二嬸零毋是佮一 . x 向下相容的版本,雖然講有一个「配接器」可用。

二空二一年十二月九號,Log 四 j 二嬸空的一个空日遠端代碼執行漏洞被報告,其實予人叫做「Log 四 Shell」,公共漏洞佮暴露編號做 CVE 鋪二千空二十一孵四四千兩百二十八。伊予人定性做「過去十年來上蓋大、上關鍵的空」。

log 四 j 一的紀錄檔等級

下表中定義的 log 四 j 一的紀錄檔級別和訊息,以嚴重性遞減排序。左欄列出矣 log 四 j 的紀錄檔級別定義,正列提供逐个紀錄檔級別的簡要說明。

組態 Log 四 j 一孵二

有三種方法來組態 log 四 j:通過 . properties 檔案,通過 XML 檔案,通過 Java 代碼。通過描述任意方法,你會使定義 log 四 j 的三个主要組件:Logger、Appender 和 Layout。通過檔案組態 log 四 j,具敢有需修改應用即時會當拍開或者是關掉紀錄檔的好處。比如講,應用程式會當佇紀錄檔關起來的情況下執行,到問題出來了後,閣再紀錄檔功能會當簡單來通過修改設定檔重新拍開。

Logger(記錄器)是紀錄檔的邏輯檔名。其使用已經知的 Java 應用程式的名稱。彼每一个記錄器當前以啥物紀錄檔記錄級別(FATAL、ERROR 等)記錄是獨立組態的。佇咧 log 四 j 的早期版本內底,這寡予人叫做類別(category)佮優先級(priority), 但這馬𪜶是分別予人叫做 logger(記錄器)和 level(級別)。

實際的輸出是通過Appender(輸出源)。 有真濟通用的 Appender,比如講 FileAppender、ConsoleAppender、SocketAppender、SyslogAppender、NTEventLogAppender,甚至 SMTPAppender。濟个 Appender 會當予人關聯著任何 Logger 上,所以會當去到多個挈檔案頂懸記錄仝款的資訊,比如講同時到一个本地檔案佮通過通訊端監聽器到另外一个電腦頂懸。

Appender 使用Layout(布局)格式化紀錄檔條目。捷用的格式化做「一擺做陣」紀錄檔案的布局是 PatternLayout,其使用一个模式字串,就親像 C / C + + 函式 printf 彼款的。此外閣有 HTMLLayout 和 XMLLayout,使用 HTML 抑是 XML 格式的時陣會閣較方便。

愛除毋著一个表現異常的設定檔,使用 Java VM 參數 `-Dlog 四 j . debug ` 通過標準輸出輸出 Log 四 j 自身的資訊。愛知影 log 四 j . propeties 的路徑,檢查 ` getClass ( ) . getResource ( " / log 四 j . properties " ) ` 抑是 ` getClass ( ) . getResource ( " / log 四 j . xml " ) `。

log 四 j 閣有一个隱含的「無組態」組態,即一个欠缺 log 四 j 的組態毋過使用矣 log 四 j 的 Java 應用程式。這將將一个警告(該程式無組態 log 四 j)列印到標準輸出,並提供 log 四 j 網站的 URL,佇遐會當揣著警告佮組態的詳細資訊。除了列印此警告,未組態的 log 四 j 的應用程式就袂列印 INFO、DEBUG 抑是 TRACE 級別的訊息,而且閣有可能袂輸閣較進階別的訊息。

log 四 j 一爿二組態範例

TTCC

TTCC 是 log 四 j 使用的訊息格式。TTCC 是 _ Time Thread Category Component _(時間、執行緒、類別、組件)的縮寫。比如講,採用以下的模式(pattern):

` ` ` % r [% t]   % 鋪五 p % c % x-% m % n ` ` `

模式轉換表為:

範例輸出

四仔六十七 [main] INFO org . apache . log 四 j . examples . Sort-Exiting main method .

徙栽

  • _ log 四 c _—— 一个 C 語言下跤的移植物件。上新的版本做二空一三年發布的一孵二 . 四版。該專案已經無閣再活跳。
  • _ log 四 js _—— 一个 JavaScript 下跤的徙栽。上新的版本做二空空八年發布的一孵一版。
  • log 四 javascript—— JavaScript 下跤的另外一个徙栽仔。上新的版本做二空一四年五月發布的一孵四 . 六版。
  • JSNLog—— JavaScript 下跤的另外一徙栽。佇咧二空一四年七月,上新的版本為二鋪七 . 一,而且定期更新。
  • Apache Log 四 net—— 微軟 . NET Framework 下跤的徙栽。上新的版本做二空一三年發布的一孵二 . 十三。
  • log 四 perl—— log 四 j 紀錄檔軟體套件佇一个 Perl 下跤的徙栽。上新的版本做二空一四年五月發布的一孵四四。
  • log 四 r—— 一个 Ruby 落來的「徙栽」。
  • PL-SQL-Logging-Utility—— log 四 j 佇咧 PL / SQL 落來的一種實現。
  • Log 四 db 二—— 一塊為使用 SQL 號令和 SQL PL 代碼的 DB 二 LUW 的紀錄檔記錄工具

Apache Log 四 j 二

Apache Log 四 j 二是 Log 四 j 一个繼任者,二空一四年七月其實 GA 版本(當咧發佈版)發布。該框架予人對頭重寫,並且對現有的紀錄檔解決方案中得著靈感(包括講 Log 四 j 一和 JUL)。 該版本佮 Log 四 j 一个主要差異是:

  • 改進的組態語法
  • 支援 XML 和 JSON 組態
  • 改進的過濾器
  • 屬性(Property)支援
  • 標記
  • 提高速度
  • 模組化:Log 四 j 二支援外掛程式系統
  • 提懸著可靠性
  • 組態自動重新安裝

Log 四 j 二的上被認可的特點之一是「非同步記錄器」的效能啦。Log 四 j 二利用矣 LMAX Disruptor。比如講,仝款的環境內底,Log 四 j 二會使寫每秒超過十八 , 零 , 零條資訊,啊若其他的框殼(像 Logback 和 Log 四 j 一)每秒干焦會當寫 < 二 , 零 , 零條訊息。

Log 四 j 二提供著 SLF 四 J、Commons Logging、Apache Flume 和 Log 四 j 一的支援。

Log 四 Shell 漏洞

阿里巴集團佇二空二一年十一月二四發現並且報告予 Apache,伊並且十二月初九佇推文中發布了一个牽涉著 Log 四 j 二中遠端代碼執行的零日漏洞,是咧講符仔「Log 四 Shell」(CVE 鋪二千空二十一孵四四千兩百二十八), 受影響的服務包括 Cloudflare、iCloud、我的世界:Java 版、Steam、騰訊 QQ 佮推特。Apache 軟體基金會分配矣上大 CVSS Log 四 Shell 的嚴重等級為十,因為數百萬台侍服器可能就較會受著該空隙的攻擊。網路安全公司 Tenable 共這个空描寫做是「過去十冬來上大、上關鍵的空」,Lunasec 的 Free Wortley 共伊描述講「災難性的設計失敗」。

佇美國,網路安全佮基礎設施安全域主任 Jen Easterly 稱該無空利用「至關要」,閣建議供應商優先考慮軟體更新,佮德國機構聯邦資訊安全辦公室 ( BSI ) 共這个空指定做佇最高威脅級別,稱其為「極其嚴重的威脅狀況」(就共翻譯)。 加拿大網路安全中心呼籲各組織隨採取行動。

會當通過組態設定禁用致使空隙的功能,該設定佇咧 Log 四 j 版本二嬸一五 . 零-rc 一(二空二一年十二月初六正式發布,漏洞發布前三工)中刪除,並替換做各種設定限制遠端走揣,自按呢減輕漏洞。為著提懸安全性,這空隙所以基於所有的使用 JNDI 的功能共預設禁用,並且對版本二四界一六 . 零開始刪除對訊息走揣的支援。

官方的 Minecraft:Java 版啟動器已經修補這空。使用自訂啟動器或者是自訂 Java 版本可能會意味著客戶捀猶未拍修補程式。佇咧無修補這个代誌的侍服器頂頭耍遊戲將允准侍服器頂頭的任何耍家佇咧另外一个客戶捀的電腦頂頭執行藏佇的惡意代碼。佇一鋪一八 . 一以上的版本上耍單人遊戲抑是濟人遊戲共防止遮漏洞。低於一人七的版本無受著影響。若是遊戲侍服器主機執行的是一孵七孵一一八版本,著愛專門修補其侍服器,若無按呢做,任何耍家攏會當使用這空隙。

參考文獻

延展閱讀

參閱

  • Chainsaw

外部連結

  • log 四 j 官方首頁