歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

Java中Log4j的使用

當我們的代碼存在有疑問的地方且不想去處理時,我們就需要把程序的日志信息輸出,這時我們會用到一個類--Log4j,想用這個類,我們需要下載Log4j的引用包,下載地址如下:http://logging.apache.org/log4j/2.x/download.html

在我們編寫測試代碼之前,第一步,我們需要把下載的包引用到我們的程序中,右鍵點擊項目選中BuildPath之後選擇你的包所在的路徑即可。

下一步是需要一個屬性文件,其中配置日志的記錄位置,記錄格式等內容,我所用到的配置文件如下,從中可以看出,我把日志文件輸出到控制台上:

log4j.rootLogger=debug, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

# Pattern to output the caller's file name and line number.
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%F\:%L) - %m%n

注意:第一行代表的是輸出級別,我這裡填寫的是最低的一層,也就是Debug,當日志輸出不比DEBUG低時,日志內容就會打印到控制台上,當然,DEBUG是最底的級別,所以,只要有日志信息都會打印出來。

這裡,所有的工作都做好了,我們開始編寫測試代碼:

package com.brucezhang.mytest;

import org.apache.log4j.Logger;


public class MyTest {
static Logger logger = Logger.getLogger(MyTest.class.getName());
 
    public static void main(String[] args) {

 //記錄日志,從最低到最高的次序為:debug->info->warn->error
 logger.debug("debug");
 logger.info("info");
 logger.warn("warn");
 logger.error("error");
 
 testLog(0);
    }
   
    public static void testLog(int div){
     try {
   int value = 8;
   System.out.println(value/div);
  } catch (Exception e) {
   // TODO: handle exception
   e.printStackTrace();
   logger.error("get a error");
  }
    }
}

運行我們的測試程序,得到結果如下所示:

DEBUG [main] (MyTest.java:12) - debug
 INFO [main] (MyTest.java:13) - info
 WARN [main] (MyTest.java:14) - warn
ERROR [main] (MyTest.java:15) - error
ERROR [main] (MyTest.java:27) - get a error
java.lang.ArithmeticException: / by zero
 at com.brucezhang.mytest.MyTest.testLog(MyTest.java:23)
 at com.brucezhang.mytest.MyTest.main(MyTest.java:17)

可以看到,日志信息和異常信息都被打印到了控制台上。

Copyright © Linux教程網 All Rights Reserved