Log4j是款經(jīng)典的日志工具,下面我介紹一下它的簡單使用。
1.下載Log4j.jar,并將它添加到工程的Libraries中。
2.在src下面新建文件log4j.properties,并設(shè)置編譯器,使其在運(yùn)行時(shí)將log4j.properties拷貝到運(yùn)行路行下。
3.在log4j.properties里面寫上如下內(nèi)容:
##LOGGERS##
log4j.rootLogger=INFO,console,file
##APPENDERS##
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=d:\\log.txt
log4j.appender.file.MaxFileSize=1024KB
##LAYOUTS##
log4j.appender.console.layout=org.apache.log4j.SimpleLayout
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm} %t %p- %m%n
并保存。
4.在程序中像下面這樣使用:
package com.cn.test;
import org.apache.log4j.Logger;
import org.apache.log4j.LogManager;
public class LogTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
Logger log=LogManager.getLogger("LogTest");
log.info("log4j:info msg");
log.warn("log4j:warn msg");
}
}
運(yùn)行后你會(huì)發(fā)現(xiàn)在D:盤下多了一個(gè)log.txt,程序在log.txt與在控制臺(tái)輸出了相關(guān)的info,warn信息。
5:log4j.properties文件的配置相關(guān)說明:
log4j.rootLogger=INFO,console,file
上面這一句指出了日志信息的輸出級(jí)別為info,錯(cuò)誤級(jí)別包括以下六種:FATAL、ERROR、WARN、INFO、DEBUG、TRACE
在具體的工程中常常是在開發(fā)階段,將級(jí)別設(shè)置為INFO或DEBUG,當(dāng)完成開發(fā)后將級(jí)別設(shè)置為WARN或ERROR,想想如果沒有l(wèi)og4j我們是怎樣做的?
很多時(shí)候我們是用System.out.println();直接輸出到控制臺(tái)的,那么開發(fā)完成后你就得付出一點(diǎn)時(shí)間去注釋掉這些實(shí)際運(yùn)行中沒用的代碼
那是一件很枯燥的事情。如果你用log4j來做這些,你只需將INFO改為WARN,那么所有的INFO信息將不再出現(xiàn),是不是很棒?
console,file是設(shè)置日志信息的輸出位置,在這里分別輸出到console(控制臺(tái)),file(文件)兩個(gè)流中去。當(dāng)然你也可以只讓其輸出到控制臺(tái),
或者只輸出到文件中去。
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=d:\\log.txt
log4j.appender.file.MaxFileSize=1024KB
上面這幾句設(shè)置了appender的實(shí)現(xiàn)類,以及具體的參數(shù)。
//Log4j提供的appender有以下幾種:
//org.apache.log4j.ConsoleAppender(控制臺(tái))
//org.apache.log4j.FileAppender(文件)
//org.apache.log4j.DailyRollingFileAppender(每天產(chǎn)生一個(gè)日志文件)
//org.apache.log4j.RollingFileAppender(文件大小到達(dá)指定尺寸的時(shí)候產(chǎn)生一個(gè)新的文件),
可通過
log4j.appender.R.///MaxFileSize=100KB設(shè)置文件大小,還可通過
log4j.appender.R.MaxBackupIndex=1設(shè)置為保存一個(gè)備份文件
//org.apache.log4j.WriterAppender(將日志信息以流格式發(fā)送到任意指定的地方)
log4j.appender.console.layout=org.apache.log4j.SimpleLayout
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm} %t %p- %m%n
上面這幾行設(shè)定了日志輸出格式。