2011-11-15 192 views
0

我對java日誌記錄機制非常陌生,現在我正在嘗試爲我的項目使用apache公共日誌記錄。這是一個Java EE項目,並且EAR文件被部署到WebLogic服務器。基本上,我想用java.util.logging的執行,我也定義如下Apache公共日誌記錄配置

handlers = java.util.logging.ConsoleHandler, java.util.logging.FileHandler 

java.util.logging.FileHandler.pattern = testLog.log 
java.util.logging.FileHandler.limit = 50000 
java.util.logging.FileHandler.count = 1 
java.util.logging.FileHandler.formatter = java.util.logging.XMLFormatter 
java.util.logging.FileHandler.level=SEVERE 

java.util.logging.ConsoleHandler.level=SEVERE 
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter 

對於包裝commons-logging.properties文件,我已經把commons-logging.properties文件到lib目錄我的EAR文件。但是,我所有的日誌輸出都打印到控制檯,而不是配置中指定的日誌文件。任何人都可以提供任何建議,或者我錯過了我的配置中的任何東西嗎?

+2

使用slf4j http://techblog.bozho.net/?p=503 – Bozho

+2

是的,使用slf4j + logback http://logback.qos.ch –

+0

同意@Bozho,去slf4j。不要浪費你的時間與java.util.logging - logback是偉大的。 – kylewm

回答

0

嘗試將「common-logging.properties」文件重命名爲「commons-logging.properties」。

+0

對不起,這是一個錯字:D文件名是commons-logging.properties。 –

2

根據user guide,commons-logging.properties必須存在於CLASSPATH中。

+0

是的,這就是爲什麼我將屬性文件放在我的EAR文件的lib目錄中。對此有何建議? –

+0

我建議將它移動到類中,然後在作爲流拉取時在'ClassLoader'中找到它。 –

+0

這有沒有解決?我在其他日誌記錄庫中使用它,因爲我使用的是pdfbox,它使用這個。但我的屬性文件根本沒有被檢測到。我該如何改變這一點? – user2223059