2010-05-24 21 views
1

我使用log4j作爲我的web應用程序的記錄器。在log4j中,我可以在log4j屬性或log4j.xml中設置級別日誌。在log4j的 ,我們實例記錄如下:在Apache Commong日誌中詢問基本配置器

static Logger logger = Logger.getLogger(SomeClass.class); 

我初始化一個servlet file using init method log4j的基本配置。 但是,我通常測試應用程序using JUnit,所以我初始化basic configurator in setup method。之後,我測試應用程序,並且可以看到日誌。

因爲我部署了網頁websphere。我改變所有的日誌實例成爲:

private Log log = LogFactory.getLog(Foo.class); 

我不知道如何使用ACL加載基本配置器。所以我無法控制調試級別到我的JUnit測試。

你有什麼建議,在不改變

static Logger logger = Logger.getLogger(SomeClass.class); 

成爲

static Logger logger = Logger.getLogger(SomeClass.class); 

回答

0

你作爲後端爲Apache下議院在單元測試中在WebSphere日誌使用什麼樣的記錄系統? ACL只是其他日誌記錄後端(如log4j)的包裝,並且您可以使用後端配置工具來配置日誌記錄級別。

所以我認爲你應該在你的單元測試中使用log4j,並在setup方法中使用它的基本配置。

+0

我只是在我的組件中使用ACL。私人日誌日誌= LogFactory.getLog(Foo.class);,如果我在我的設置方法中使用log4j進行基本配置。我必須改變私人日誌日誌= LogFactory.getLog(Foo.class);對於我開發的每個類都成爲靜態Logger logger = Logger.getLogger(SomeClass.class);.這是我想避免的 – 2010-05-24 06:07:27

+0

ACL委託登錄到其他日誌框架,如果你沒有專門使用任何東西,那麼它可能會去java.util.logging。在你的測試中進行配置。 – 2010-05-24 09:21:34