Log4j配置輸出log檔案的相對路徑
1 配置log4j
log4j.properties檔案內容如下:
log4j.logger.info=info log4j.appender.info=org.apache.log4j.DailyRollingFileAppender log4j.appender.info.layout=org.apache.log4j.PatternLayout log4j.appender.info.layout.ConversionPattern=%d{yyyy-MM-dd-HH-mm} [%t] [%c] [%p] - %m%n log4j.appender.info.datePattern='.'yyyy-MM-dd log4j.appender.info.Threshold = info log4j.appender.info.append=true log4j.appender.info.File=/mylog/info.log
配置檔案中指定日誌輸出路徑配置程式碼片段如下:
log4j.appender.info.File=/mylog/info.log
上述日誌輸出路徑為指定好的絕對路徑,可否依據程式的執行情況,動態配置路徑呢?答案是可以的,詳情往下看。
2 動態配置日誌輸出路徑
動態配置日誌輸出路徑分為兩步:第一步抽象日誌輸出路徑;第二步設定系統變數。
2.1 抽象日誌輸出路徑
修改檔案輸出路徑,即將決定路徑替換為${log.base}:
log4j.appender.DEBUG.File=${log.base}/mylog/info.log
2.2 設定系統變數
上一步中已經指定了抽象路徑log.base(當然名稱可以隨意取),因此在程式執行前需要初始化這個系統變數。
設定系統變數利用方法System.setProperty(“log.base”,rootPath); 這裡需要注意一點是,main函式主類中初始化變數時,不要初始化log4j, 否則會報錯,初始化log4j的動作放在子類中。
// 初始化日誌路徑
String rootPath = System.getProperty("user.dir");
System.setProperty("log.base",rootPath);
這樣就達到讓log4輸出的日誌檔案,位於專案執行根目錄下的相對路徑相關推薦
Log4j配置輸出log檔案的相對路徑
1 配置log4j log4j.properties檔案內容如下: log4j.logger.info=info log4j.appender.info=org.apache.log4j.DailyRollingFileAppender log4j.appender.i
log4j中配置日誌檔案相對路徑方法
總結了上面的三個方法,可取的是方法三,但是還是繁瑣,要寫個servlet,寫一大堆程式碼 下面這個方法比較實用我覺得,大家可以試下: log4j.appender.AFile=org.apache.log4j.DailyRollingFileAppenderlog4j.app
springboot2.0 @Slf4j log 日誌配置 輸出到檔案 彩色日誌
今天做了個日誌記錄: 解決問題: 使用了springboot原生自帶的一個log框架 POM新增一個外掛(不然使用不了@Slf4j註解): <dependency> <groupId>org.projectlombok</
java讀取resources下的配置檔案+檔案相對路徑小結
一.檔案讀取 1.利用java.util自帶的Properties類讀取 Properties類的load方法提供了兩種讀取檔案的方式 (1)reader作為引數,以字元流方式讀取 Properties properties = new Properties();
springboot2.0 @Slf4j log 日誌配置 輸出到檔案 彩色日誌
今天做了個日誌記錄:解決問題:使用了springboot原生自帶的一個log框架 POM新增一個外掛(不然使用不了@Slf4j註解):<dependency> <groupId>org.projectlombok</gro
log4j_properties配置生成log檔案路徑問題
那麼hibernate.log這個檔案會很“聰明地”建立到Tomcat的啟動目錄上,如果我希望它在\WEB-INF\下面安家,就要這樣寫: log4j.appender.file.File=c:\tomcat41\webapps\mysite\WEB-INF\hibernate.log 但是如果我要把它
log4j配置輸出到多個日誌文件
基準 方式 ref err logfile otl sni targe file 通常我們項目裏,有一些重要的日誌想單獨的輸出到指定的文件,而不是全總輸出到系統的日誌文件中。那麽我們log4j為我們提供了這種功能,以下我們來一步一步看是怎麽做的。這裏以pro
log4j配置輸出到多個日誌文件(轉)
兩種模式 簡單 mylog 效果 evel ast mar 輸出 rop 參考資料:http://logging.apache.org/log4j/1.2/manual.html 通常我們項目裏,有一些重要的日誌想單獨的輸出到指定的文件,而不是全總輸出到系統的日誌文件中。那
golang檔案相對路徑問題
目錄結構: --simple --data --data.json --search --feed.go 具體程式碼: const dataFile = "../data/data.json" _, filename, _, _ :
mybatisGenerator配置時候生成檔案的路徑問題
今天重新想用mybatis-generator逆向生成dao,mappr,domain檔案時候,突然失敗了。但是控制檯也沒報錯。 確認了配置,資料庫連線及表沒問題。最後發現是路徑的問題。之前的是相對路徑,萬般無奈之下我改成了絕對路徑試試。。就成功了。 改回相對路徑又失敗了。一直用的都是相對路徑的方式,突然
JAVA Tomcat Log4j 日誌輸出到檔案
工程引用 Log4j.jar 要輸出日誌的類中引用 import org.apache.log4j.Logger; import org.apache.log4j.PropertyConfigurator; 建立log4j.prope
Java Web中使用logback輸出日誌檔案的路徑問題
一個軟體的日誌有多重要,相信當軟體出問題,你一行一行去找的時候才會意識到,Clean code, clean logs中提出了10個建議來有效的使用日誌。 從我自己的經驗上來看,從根本不會考慮日誌問題,到使用System.out.println(),再到使用s
獲得檔案相對路徑
1.將檔案放在原始碼目錄下 String path = 類名.class.getClassLoader().getResource("").getPath(); //可以ding定位到classes目錄下, File file = new File(pa
base標籤和JSP宣告變數解決檔案相對路徑和絕對路徑問題
先看需求:同一個專案需要給不同的客戶部署,有的客戶使用windows,有的客戶使用Linux。使用windows的客戶,其使用者檔案是儲存在tomcat的相對路徑下;使用Linux的客戶,其使用者檔案是儲存在一個絕對路徑下。 問題:同一個檔案的顯示,相對路徑能
Jenkins訪問路徑配置自定義的相對路徑
開發十年,就只剩下這套架構體系了! >>>
Log4j使用相對路徑指定log檔案及使用總結
Log4j在指定log檔案位置時一般是使用絕對路徑,這樣在部署環境發生變化時顯得十分麻煩,在網上找了很多種方法,個人感覺以下方法比較適用: 由於spring也會載入log4j.properties,如果載入不到就往控制檯打log資訊。Spring提供了 一個Log4
Maven專案 Log4j 配置及日誌輸出到相對路徑
1.Maven pom.xml 配置log4j依賴 <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId>
web專案Log4j日誌輸出路徑配置問題 問題描述:一個web專案想在一個tomcat下執行多個例項(通過修改war包名稱的實現),然後每個例項都將日誌輸出到tomcat的logs目錄下例項名命名的文
問題描述:一個web專案想在一個tomcat下執行多個例項(通過修改war包名稱的實現),然後每個例項都將日誌輸出到tomcat的logs目錄下例項名命名的資料夾下進行區分檢視每個例項日誌,要求通過儘可能少的改動配置檔案,最好修改例項名後可以不修改log4j的配置檔案。 實現分析:一般實現上面需求,需要在修
Log4J配置Syslog單獨輸出、以及配置單獨檔案輸出
前言: Log4J在專案中會經常使用,大部分的logger會配置到rootLogger中,這種情況下子Logger 會繼承 父Logger 的appender,也就是說子Logger 會在 父Logger 的appender裡輸出。 但在開發的過程中我們經常會
web專案Log4j日誌輸出路徑配置問題
問題描述:一個web專案想在一個tomcat下執行多個例項(通過修改war包名稱的實現),然後每個例項都將日誌輸出到tomcat的logs目錄下例項名命名的資料夾下進行區分檢視每個例項日誌,要求通過儘可能少的改動配置檔案,最好修改例項名後可以不修改log4j的配