標籤:心得 str apt 發送 pack memory 日誌記錄器 auth 格式化
Java 中內建的日誌系統,今天抽空瞭解了一點,算是入了門,所以將自己的一些心得記錄下來,以備日後查看,有興趣的朋友,看到此文章,覺得有錯誤或需要添加的地方,請在下方評論留言,大家可以共同進步,謝謝:)
Java中關於日誌系統的API,在 java.util.logging 包中,在這個包中,Logger類很重要。
Logger類是用來記錄 某個層級的日誌訊息:
層級共分為以下幾類,從上倒下,層級依次下降:
SEVERE(嚴重)------層級最高
WARNING(警告)
INFO
CONFIG
FINE
FINER
FINEST------最低值
另外,還有一個層級 OFF,可以用來關閉日誌;使用層級 ALL,啟用所有訊息的日誌記錄。(日誌訊息層級,可以查看 java.util.logging.Level類)
具體記錄日誌的方法,查看此類的API文檔,在此就不詳述了。
Logger記錄的日誌訊息會被轉寄到登入的Handler對象,handler對象可以將訊息發送到:控制台,檔案,網路等等。
Handler類(抽象類別):主要用於轉寄日誌訊息
Hanlder類下有2個子類:MemoryHandler、StreamHandler。
StreamHandler下有3個子類:ConsoleHandler(將日誌訊息列印到控制台)、FileHandler(將日誌訊息輸出到檔案)、SocketHandler(將日誌發送到網路中的某個主機)。具體詳情,查看API文檔。
Formatter類(抽象類別):主要用于格式化日誌記錄訊息。
有2個子類:SimpleFormatter(純文字形式), XmlFormatter(XML形式)
下面一起來寫一個測試程式吧:
/**
* DateAndTime: 2016-12-8下午10:37:18
*/
package chapter07;
import java.io.IOException;
import java.util.logging.FileHandler;
import java.util.logging.Logger;
/**
* @author Administrator
* 將日誌記錄寫入到檔案中
*
*/
public class TestLoggingToFile {
public static void main(String[] args) throws SecurityException, IOException {
//日誌記錄器
Logger logger = Logger.getLogger("chapter07");
//Tlog器
FileHandler fileHandler = new FileHandler("d:\\test.txt");
//需要記錄的日誌訊息
LogRecord lr = new LogRecord(Level.INFO, "This is a text log.");
//為處理器設定日誌格式:Formatter
SimpleFormatter sf = new SimpleFormatter();
fileHandler.setFormatter(sf);
//註冊處理器
logger.addHandler(fileHandler);
//記錄日誌訊息
logger.log(lr);
}
}
當然,如果把 SimpleFormatter 改成 XmlFormatter,記錄的訊息是xml形式,在此就不貼代碼了,各位看官可以自己試試,哈哈哈:)
以上就是,Java日誌系統的簡單入門了,趕快拿起旁邊的鍵盤,敲著試試吧:)
Java日誌系統---Logger之簡單入門