背景:
之前用 log4j一直設定的輸出到控制台。今天由於job任務出現了異常,因為是非同步的,沒辦法在控制台看錯誤資訊了,於是乎決定把日誌列印到檔案裡面。然後就找了篇部落格配置了下。但是配置完後,怎麼也看不到有內容輸入到日誌檔案,而且還不報錯,很奇怪,於是排查了下。
解決思路:
1.首先新建立了乙個控制台專案對部落格案例進行了獨立測試,證明是好使的。
2.根據差異排查,只有引入的jar包不同,於是開始排查jar包。
2.1將異常專案的所有jar包引入到獨立測試專案。
2.2將jar包分批進行排查,逐漸縮小範圍,直到出現異常為止。這樣就找出了異常包。
2.3然後看下異常包具體作用,為啥引入了log4j就不好使了。 如果在專案中沒啥作用的化,在專案中排除異常包就可以了。
我的異常包是:hhadoop-mapreduce-client-jobclient.jar包和hadoop-mapreduce-client-jobclient-tests.jar,然後去掉就ok了。
log4j.properties配置檔案:
log4j.rootcategory=debug, console,logfile
log4j記錄不同的日誌 Log4j 日誌記錄方法
logger類具有處理日誌記錄活動的方法。我們可以使用兩個靜態方法建立logger類的例項 public static logger getrootlogger public static logger getlogger string name 第乙個方法返回沒有名稱的根日誌記錄器。第二個方法按名...
log4j日誌系統 Log4j
1.1 log4j的三大核心元件 1.2 loggers 記錄器 1.4 layouts 布局 org.apache.log4j.htmllayout 以html 形式布局 org.apache.log4j.patternlayout 可以靈活地指定布局模式 org.apache.log4j.lay...
Log4J日誌檔案配置
log4j日誌檔案配置 一 日誌器配置 根日誌器 其他日誌器都繼承自這個日誌器 日誌的層次 log4j.logger.a info,a1 log4j.logger.a.b debug,a1,a2 則日誌器的繼承關係為 a.b繼承自a,a繼承自root logger,即發往a.b的info日誌,也會被...