促銷
學習
課程
任務
問卷 & 測驗
遊戲
說明
行程
社群
用戶
論壇
聊天
文章
成功故事
動態
評價
訂閱
淺色主題
課程
評論
關於我們
開始
開始學習
立即開始學習
My Progress
Courses
任務地圖
課程
Java Professional
等級 5
為什麼 Java 需要日誌
Module 3 a ɛto so abien
等級 5,
課程 0
1.1 日誌介紹 日誌是已發生事件的列表。幾乎就像一本航海雜誌或日記。那麼,相應地,記錄器是一個可以用來記錄的對象。在編程中,習慣上記錄幾乎所有內容。在 Java 中,一切都是這樣,甚至更多。 事實上,Java 程序通常是沒有 UI、控制台等的大型服務器應用程序。他們同時處理來自數千個用戶的請求,經常會出現各種錯誤。特別是當不同的線程開始相互干擾時。 而且,事實上,在這種情況下找到很少重現的錯誤和故障的唯一方法是將每個線程中發生的所有事情寫入日誌/文件。 大多數情況下,有關調
Java 中的日誌歷史記錄
Module 3 a ɛto so abien
等級 5,
課程 1
2.1 第一個記錄器——log4j 如您所知,日誌的歷史始於System.err.println()向控制台輸出一條記錄。它仍然積極用於調試,例如,Intellij IDEA 使用它向控制台顯示錯誤消息。但是這個選項沒有任何設置,所以讓我們繼續。 第一個也是最受歡迎的記錄器被稱為Log4j. 這是一個很好的、高度可定制的解決方案。由於各種情況,這個決定沒有進入 JDK,這極大地擾亂了整個社區。 這個記錄器不僅能夠記錄,它是由程序員為程序員創建的,並允許他們解決與日誌記錄相關的
事件級別
Module 3 a ɛto so abien
等級 5,
課程 2
3.1 事件級別列表 日誌記錄是記錄程序運行時發生的任何事件的過程。你作為程序員的職責是,запротоколировать все важное因為那時,當production出現奇怪和/或嚴重的錯誤時,除了這些日誌之外,你將一無所有。 如果您掌握了有關錯誤的所有信息以及所有調用歷史記錄,那麼消除任何錯誤的速度將快很多倍。但是從這裡可以得出一個簡單的結論 - 記錄一般的一切:所有方法的調用,所有參數的值。 這也不是一個選擇——信息太多和太少一樣糟糕。我們需要智能日誌記錄。人
設置日誌記錄級別
Module 3 a ɛto so abien
等級 5,
課程 3
4.1 日誌級別列表 您編寫了程序,將其上傳到服務器,然後您立即開始有疑問: 如何確保debug()該方法在工作時不起作用production? 日誌中的信息太多,是否只留下錯誤信息? 如何查看應用程序某一部分的詳細日誌? 當然,日誌的創建者幾十年前就面臨過同樣的事情。我不會告訴你這個問題在C語言中是如何解決的,但是在Java語言中卻非常漂亮地解決了。 日誌在將信息寫入. 您可以通過設置日誌記錄級別非常快速地減少/增加日誌的詳細信息。下表描述了這些級別: 等級 筆記 1個 全
Log4j 中的日誌過濾器
Module 3 a ɛto so abien
等級 5,
課程 4
5.1 過濾器列表 記錄器允許您非常酷地配置消息過濾。為此,他有幾十個帶有各種參數的過濾器。下表顯示了最受歡迎的。 過濾器 描述 1個 突發濾波器 允許您控制給定日誌記錄級別的每秒消息頻率。 2個 複合過濾器 允許您設置多個順序過濾器。 3個 動態閾值濾波器 如果在日誌中找到某些信息,允許您啟用詳細日誌記錄。 4個 地圖過濾器 允許您從多個參數為過濾器構建複雜的邏輯表達式。 5個 標記過濾器 允許您按標籤過濾消息,必須在事件記錄期間首先添加標籤。 6個 正則過濾器 允許您設置
Log4j 中的附加程序
Module 3 a ɛto so abien
等級 5,
課程 5
附加程序列表 記錄器允許您一次將數據保存到多個文件中。這樣的輸出數據流被稱為appender(來自append)。有很多標準的 appender,所以我們只介紹最流行的: 附加程序 描述 1個 安慰 將數據打印到控制台 2個 文件 將數據輸出到文件 3個 每日滾動文件 輸出數據到文件,文件被循環覆蓋 4個 異步 允許您將數據異步寫入另一個附加程序 5個 插座 將數據寫入特定套接字 6個 JDBC 使用 JDBC 協議將消息寫入數據庫 7 JPA 使用 JPA 協議將消息寫入數
Log4Shell 漏洞
Module 3 a ɛto so abien
等級 5,
課程 6
7.1 醜聞 當然,不可能不講述最近發生的故事——發生在 2021 年底。 美國網絡安全和基礎設施保護局(CISA)表示,該問題Log4Shell是歷史上最嚴重的漏洞之一。是的,我們正在談論我們最喜歡的圖書館log4j。 我們舒適的小圖書館log4j 和歷史上最大的漏洞?感興趣嗎?然後聽。 7.2 災害規模 Log4ShellLunasec 安全專家於 2021 年 12 月 9 日宣布發現了一個嚴重漏洞(代碼 CVE-2021-44228)。Apache Security
相關項目:測試和日誌記錄
Module 3 a ɛto so abien
等級 5,
課程 7
這個程序是對跑馬場的模仿 首先,與之前的項目一樣,從存儲庫中創建一個分支:https://github.com/CodeGymCC/hippodrome,然後自己克隆這個分支。 您的任務是添加測試和日誌記錄。 所需測試列表 在下面的列表中,每個項目都必須作為單獨的測試方法來實現。在為測試方法起名字時,盡量簡潔,但同時,這樣你就可以大致了解它們到底在測試什麼。例如,比較這兩個測試結果: 在第二種情況下,更難理解什麼樣的測試沒有通過,您將不得不查看日誌。 1.馬類: 構造器
Please enable JavaScript to continue using this application.