log4j實現原理

一直在用log4j可是不清楚其中的原理,關鍵代碼以下:ide

經過new Throwable().getStackTrace();獲取當前執行代碼的棧,其中包括了正在執行的類名、方法名,測試

和文件名:spa

  
  
  
  
  1. StackTraceElement elements[] ;   
  2.      elements =new Throwable().getStackTrace(); 
  3.      for(int i=0;i<elements.length;i++) 
  4.      { 
  5.          System.out.println("測試"+elements[i].getLineNumber()+
  6. "-"+elements[i].getClassName() + "-" + elements[i].getMethodName()+
  7. "-"+elements[i].getFileName());   
  8.      } 
  9.           

經過配置文件肯定debug、info、error是否存在,進入logger內部判斷是否執行相應級別!debug

  
  
  
  
  1. logger.debug("This is debug message from Dao.");   
  2.        // 記錄info級別的信息   
  3.        logger.info("This is info message from Dao.");   
  4.        // 記錄error級別的信息   
  5.        logger.error("This is error message from Dao.");   
相關文章
相關標籤/搜索