首先我們獲得一個(gè)LogManager類的一個(gè)實(shí)例:
LogManager lMgr = LogManager.getLogManager();
然后我們創(chuàng)建記錄器,并且把它添加到當(dāng)前的治理器:
String thisName = “Logpkg”;
Logger log = Logger.getLogger(thisName);
lMgr.addLogger(log);
假如我們沒有指定日志文件存放的位置,則按照jre/lib目錄下logging.PRoperties文件中指定的內(nèi)容,默認(rèn)是ConsoleHandler意味著日志信息在控制臺(tái)顯示。
在程序中我們可以按照級(jí)別發(fā)布日志信息,共有7個(gè)級(jí)別:SERVER(最高值),WARNING,INFO,CONFIG,F(xiàn)INE,F(xiàn)INER,F(xiàn)INEST(最低值),和OFF(不記錄)。
log.server(“error”);
我們可以設(shè)置記錄器的記錄級(jí)別,以忽略低于WARNING級(jí)別的消息,只有用server和warning記錄的信息才能輸出。
log.setLevel(Level.WARNING);
log.info(“This message is info”);//這條信息會(huì)被忽略,不會(huì)被輸出
log.warning(“This message is warning”);//這條信息會(huì)輸出
假如想要同時(shí)把日志輸出到文件和控制臺(tái),可以創(chuàng)建一個(gè)FileHandler并把它添加到記錄器。
fh = new FileHandler(“runtime.log”);
log.addHandler(fh);
假如沒有非凡指定,文件格式默認(rèn)的是xml。
通過配置文件來控制日志記錄:
FileInputStream fi = new FileInputStream(new File(logging.properties));
lMgr.readConfiguration(fi);
這樣做的好處是不需要改變或重新編譯程序,就可以改變?nèi)罩居涗浀臓顟B(tài)。
配置文件的格式:
handlers = java.util.logging.FileHandler,java.util.logging.ConsoleHandler
.Level = INFO
java.util.logging.ConsoleHandler.pattern = runtime.log
java.util.logging.ConsoleHandler.limit = 50000
java.util.logging.ConsoleHandler.count = 2
java.util.logging.ConsoleHandler.formatter = java.util.logging.XMLFormatter
java.util.logging.ConsoleHandler.level = WARNING
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注