財神娛樂首存即享優惠回饋唷~詳情請進👉

Log4j 日記文件刮刮樂 吃角子老虎Linux/Mac/Windows通用寄存地位配置要領

log4j1/log4j2中category的設置和log的輸入地位(windows以及linux通用的log輸入地位)

1、場景以及需求

假定我目前有3個自力的用project(暫時用maven聯系關系起來,當然也能夠不消maven),一個是供應公共服務的infrastructure,一個是供應存儲的persister,一個是供應搜刮的searcher,個中供應根基服務的一切的類,例如DateUtils,HttpUtils等對象類都位于目次com.chuanliu.platform.activity下,而供應存儲服務的一切類都位于com.chuanliu.platform.activity.persist目次下,供應搜刮服務的一切類都位于com.chuanliu.platform.activity.solr下。

目前項目的需求是有一個log文件鳴full.log,必要記載一切的日記,不論是infrastructure下的,仍是persister下的,仍是seracher下的,另外還必要一個日記文件鳴solr.log,記載一切產生在搜刮目次下的日記。當然未來還應當將search線上真人麻將推薦er目次下的日記放在searcer.log中。

除此以外還應當支撐依據不同的部署情況配置不同的log輸入地位,由于windows以及linux具備不同的目次布局。

二、無論是log4j1仍是log4j2中,都可以使用以下設置:

log4j.rootLogger = info
log4j.debug = false

log4j.category.com.chuanliu.platform.activity = info,full,stdout
#The child logger appender will not inherit the parent logger's appender,or the logs will be output twice in the file
log4j.additivity.com.chuanliu.platform.activity.platform.activity = false

log4j.category.com.chuanliu.platform.activity.solr = info,solr
log4j.additivity.com.chuanliu.platform.activity.platform.activity.solr = false

###### activity full log: contains all of the log ####
#full
log4j.appender.full = org.apache.log4j.DailyRollingFileAppender
log4j.appender.full.File = ${LogFile.Location}/full.log
log4j.appender.full.DatePattern = '.'yyyy-MM-dd
log4j.appender.full.layout = org.apache.log4j.PatternLayout
log4j.appender.full.layout.conversionPattern = %d [%t] 大樂透開獎號碼%-5p %c{1} - %m%n
log4j.appender.full.ImmediateFlush = true
log4j.appender.full.append = true

######activity full log ####

######activity 威力彩開獎號碼solr log : only contain the log in searcher####
#solr
log4j.appender.solr = org.apache.log4j.DailyRollingFileAppender
log4j.appender.solr.File = ${LogFile.Location}/solr.log
log4j.appender.solr.DatePattern = '.'yyyy-MM-dd
log4j.appender.solr.layout = org.apache.log4j.PatternLayout
log4j.appender.solr.layout.conversionPattern = %d [%t] %-5p %c{1} - %m%n
log4j.appender.solr.ImmediateFlush = true
log4j.appender.solr.append = true
######activity solr log ####

# Console output...
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=[%d][%p]%t: %m%n

# log sql for mybatis 
log4j.logger.mybatis =TRACE


org.springframework.web=debug 

如許顛末測試,你會發明,一切的log都進入了full.log中,而只有com.chuanliu.platform.activity.solr下的日記輸入進入了solr.log.

另外關于日記的輸入地位, ${LogFile.Location},咱們可以在不同情況的設置文件中自界說LogFile.Location的值,譬如在代表內地情況的dev.properties中,界說LogFile.Location=C://logs

代表測試情況的qa.properties中,界說LogFile.Location=/usr/local/var/logs,一樣在臨盆情況中界說雷同的值為:LogFile.Location=/usr/local/var/logs,如許在不同情況下就會在不同路徑下天生不同的log文件。

實在,顛末測試后,沒有這么貧苦,咱們可以同一將windows以及linux的log輸入設置到統一個處所,即下面咱們可以同一的將輸入配置為/usr/local/var/logs,如許捕魚達人舊版的配置在linux中,人人都能懂得,但在windows中,可能不是那末好懂得,在windows中,/usr/local/var/log有2層寄義:

一、若是是在eclipse中履行這些日記輸入的類的要領,那末將在workspace地點的磁盤,例如E盤中創立目次/usr/local/var/log,并輸入full.log以及solr.log.

2、若是是在tomcat中運用履行日記的輸入,那處便是在tomcat地點的磁盤中,例如D盤中創立目次/usr/local/v六合彩規則ar/log,并輸入full.log以及solr.log,即就是在eclipse中啟動tomcat,這時候tomcat的wtpapps目次是在eclipse地點的目次,如E盤中,然則真正使用的tomcat是在D盤中的,那末一樣是在/usr/local/var/logs中輸入如上的日記文件。

以上這篇Log4j 日記文件Linux/Mac/Windows通用寄存地位配置要領便是小編分享給人人的掃數內容了,但愿能給人人一個參考,也但愿人人多多支撐編程小技能。

【免責聲明】本站內容轉載自互聯網,其相關談吐僅代表作者小我私家概念盡非權勢巨子,不代表本站態度。如您發明內容存在版權成績,請提交相關鏈接至郵箱:,咱們將實時予以處置。