一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - java不通過配置文件初始化logger示例

java不通過配置文件初始化logger示例

2019-11-22 13:03Java教程網 JAVA教程

這篇文章主要介紹了java不通過配置文件初始化logger示例,需要的朋友可以參考下

代碼如下:


import org.apache.log4j.ConsoleAppender;
import org.apache.log4j.FileAppender;
import org.apache.log4j.Level;
import org.apache.log4j.Logger;
import org.apache.log4j.PatternLayout;

 


public class LoggerUtils {

 /**
  * 創建Logger實例
  * 
  * @param clazz  事件日志發生類
  * @param ifConsole 是否輸出到控制臺
  * @param ifFile  是否輸出到文件
  * @param logFile  日志文件地址(路徑分割使用“/”)
  * @param ifLocate 是否定位事件日志發生位置(類.方法 line)
  * @return Logger
  */
 public static Logger getLogger(Class<?> clazz, boolean ifConsole, boolean ifFile, String logFile, boolean ifLocate) {

  if(ifConsole == false && ifFile == false) return null;

  if(ifFile == true && logFile.trim().length() < 1) return null;

  String conversionPattern;
  if(ifLocate == true) {
   // 日志內容形式如:2014-03-11 01:34:45.572 [DEBUG] com.aliyun.qa.utils.LoggerUtilsTest.main(Line:15): 測試DEBUG日志
   conversionPattern = "%d{yyyy-MM-dd HH:mm:ss.SSS} [%-5p] %c.%M(Line:%L): %m %n";
  } else {
   // 日志內容形式如:2014-03-11 01:34:45.572 [DEBUG] : 測試DEBUG日志
   conversionPattern = "%d{yyyy-MM-dd HH:mm:ss.SSS} [%-5p] : %m %n";
  }
  PatternLayout layout = new PatternLayout();
  layout.setConversionPattern(conversionPattern);

  Logger logger = Logger.getLogger(clazz);
  logger.removeAllAppenders();
  logger.setLevel(Level.DEBUG);
  logger.setAdditivity(false);     // Logger不會在父Logger的appender里輸出,默認為true

  if(ifConsole == true) {  // 日志輸出到控制臺
   ConsoleAppender consoleAppender = new ConsoleAppender();
   consoleAppender.setLayout(layout);
   consoleAppender.setThreshold(Level.INFO);  // ConsoleAppender日志級別為DEBUG
   consoleAppender.activateOptions();
   logger.addAppender(consoleAppender);
  }

  if(ifFile == true) {  // 日志輸出到文件
   FileAppender fileAppender = new FileAppender();
   fileAppender.setLayout(layout);
   fileAppender.setFile(logFile);
   fileAppender.setEncoding("UTF-8");
   fileAppender.setAppend(true);
   fileAppender.setThreshold(Level.INFO);   // FileAppender日志級別為INFO
   fileAppender.activateOptions();
   logger.addAppender(fileAppender);
  }

  return logger;
 }

 /**
  * 創建Logger實例(僅輸出到控制臺)
  * 
  * @param clazz  事件日志發生類
  * @param ifLocate 是否定位事件日志發生位置(類.方法 line)
  * @return Logger
  */
 public static Logger getLogger(Class<?> clazz, boolean ifLocate) {
  return getLogger(clazz, true, false, null, ifLocate);
 }

 /**
  * 創建Logger實例(僅輸出到文件)
  * 
  * @param clazz  事件日志發生類
  * @param logFile  日志文件地址(路徑分割使用“/”)
  * @param ifLocate 是否定位事件日志發生位置(類.方法 line)
  * @return Logger
  */
 public static Logger getLogger(Class<?> clazz, String logFile, boolean ifLocate) {
  return getLogger(clazz, false, true, logFile, ifLocate);
 }

}

 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 门房秦大爷在线阅读 | 日韩久久网 | 国产yw193.㎝m在线观看 | 双子母性本能在线观看 | 果冻传媒林予曦图片 | japanesepooping脱粪| 国产成人高清视频 | 二次元美女挤奶漫画 | 欧美高清国产 | 亚洲国产精品久久久久久 | 亚洲AV人无码综合在线观看蜜桃 | 国产欧美日韩图片一区二区 | 大片毛片女女女女女女女 | 日本加勒比在线精品视频 | 亚洲成A人片在线观看中文L | 亚洲国产在线观看免费视频 | 欧美同性猛男野外gay免费 | 久久黄色精品视频 | 亚洲成人国产精品 | 公交车上插入 | 日韩精品一区二区三区中文版 | 五月婷婷丁香在线视频 | 美女隐私部位视频网站 | 欧美精品久久久久久久免费观看 | 国产综合久久久久 | 国产亚洲一欧美一区二区三区 | 99久久伊人精品波多野结衣 | 国产欧美日韩综合 | 免费全看男女拍拍拍的视频 | 国产1广场舞丰满老女偷 | 国产精品国色综合久久 | 欧美日韩精品在线视频 | 亚洲精品片 | 2021国产麻豆剧传媒剧情最新 | 日本漫画大全之工之口 | 情缘1完整版在线观看 | 亚洲精品国产一区二区三区在 | 国产东北3p真实在线456视频 | 日韩在线a视频免费播放 | 国产成人永久免费视 | 欧美高清免费一级在线 |