我正在用Java編寫一個小的xml轉換層。我通過Web服務接收到XML,對其進行修改,然後將修改後的XML發送到另一個系統。然後我等待響應並將響應返回給原始呼叫者。Log4J RollingFileAppender無法滾動文件
System A -> Me -> System B -> Me -> System A
我想記錄我收到的請求,我發送的請求,我收到的響應和我發送的請求。基本上我想記錄每個箭頭在我的圖中的xml。
我的問題是與RollingFileAppender進行。我試圖在10MB下滾動,有時會滾動,有時不滾動。如果它滾動幾次然後停止,它將繼續將滾動的文件從3重命名爲4和4到5等等。
我最好的猜測是,10MB標記雜交時有多個線程寫入日誌文件,該文件不能改名我。我希望Log4J爲此提供了一個簡單的解決方案,但是如果需要的話,我願意切換到新的日誌框架。預先感謝您的任何幫助。
編輯 這是我的屬性文件。
log4j.rootLogger=DEBUG, fileOut
log4j.appender.fileOut=org.apache.log4j.RollingFileAppender
log4j.appender.fileOut.File=/logs/log.log
log4j.appender.fileOut.layout=org.apache.log4j.PatternLayout
log4j.appender.fileOut.layout.ConversionPattern=%d %-5p %c - %m%n
log4j.appender.fileOut.MaxFileSize=10MB
log4j.appender.fileOut.MaxBackupIndex=10
log4j.appender.fileOut.append=true
EDIT 2這實質上是一種凸塊,因爲這柱具有的觀點低數量。我覺得這不可能是一個獨特的問題。任何幫助深表感謝。謝謝!
感謝您的詳細解釋。我看到我做錯了什麼,以及如何避免它在未來。我知道它不可能是Log4J的錯! – Joe
@Joe如果它有任何幫助,我也知道它不可能是Log4J的錯...... – Isaac
@Isaac你能告訴我哪個「JVM參數」應該添加這一行嗎?-Dlog4j.debug = true' ? –