Log4j是Apache的一個開源項目,通過使用Log4j,我們可以控制日志信息輸送的目的地是控制台、文件、GUI組件,甚至是套接口服務器、NT的事件記錄器、UNIX Syslog守護進程等;我們也可以控制每一條日志的輸出格式;通過定義每一條日志信息的級別,我們能夠更加細致地控制日志的生成過程。最令人感興趣的就是,這些可以通過一個配置文件來靈活地進行配置,而不需要修改應用的代碼。
maven依賴
<dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency>
log4j配置
在src/mian/resource目錄下新建log4j.properties
#設置日志的級別,定義日志信息的輸出目的 log4j.rootLogger=DEBUG, CA ,RFA #定義CA的輸出目的地為控制台 log4j.appender.CA=org.apache.log4j.ConsoleAppender #布局為 PatternLayout 可以靈活地指定布局模式。 log4j.appender.CA.layout=org.apache.log4j.PatternLayout #設置輸出格式 log4j.appender.CA.layout.ConversionPattern=%-d{yyyy-MM-dd HH\:mm\:ss} [%c]-[%p] %m%n #定義R的輸出目的地為文件,並且文件大小到達指定尺寸的時候產生一個新的文件 log4j.appender.RFA=org.apache.log4j.RollingFileAppender #設置輸出的文件地址 log4j.appender.RFA.File=D:\\Test_Log4j.log #設置文件大小為100 kb 文件到達100時,產生一個新文件, #MaxBackupIndex 最大記錄的文件數為1 超過刪除較早的。 log4j.appender.RFA.MaxFileSize=100KB log4j.appender.RFA.MaxBackupIndex=1 #以下和上面一樣 log4j.appender.RFA.layout=org.apache.log4j.PatternLayout log4j.appender.RFA.layout.ConversionPattern=%p %t %c - %m%n
調用代碼
import org.apache.log4j.Logger; public class TestLog { private static Logger logger = Logger.getLogger(TestLog.class); public static void main(String[] args) { logger.debug(" This is debug!!!"); logger.info(" This is info!!!"); logger.warn(" This is warn!!!"); logger.error(" This is error!!!"); logger.fatal(" This is fatal!!!"); } }
官方文檔:https://logging.apache.org/log4j/2.x/
參考:https://blog.csdn.net/liuzane/article/details/78017088