我想使用log4j過濾掉堆棧跟蹤中的某些行(如net.sf.cglib.*
和org.springframework.*
)。可以用log4j
來配置嗎?如何過濾log4j堆棧跟蹤中的某些行?
在eclipse中,junit插件允許您添加修改junit選項卡中顯示的堆棧跟蹤的過濾器,但這不會將堆棧跟蹤輸出更改爲控制檯。
我想使用log4j過濾掉堆棧跟蹤中的某些行(如net.sf.cglib.*
和org.springframework.*
)。可以用log4j
來配置嗎?如何過濾log4j堆棧跟蹤中的某些行?
在eclipse中,junit插件允許您添加修改junit選項卡中顯示的堆棧跟蹤的過濾器,但這不會將堆棧跟蹤輸出更改爲控制檯。
使用此過濾佈局log4j的插件: http://www.openmindlab.com/lab/tools/openutilslog4j/layout.html
他們與該網頁上的log4j.xml的例子。只需使用it.openutils.log4j.FilteredPatternLayout代替的log4j的PatternLayout,然後把一些項目像
<param name="Filter" value="net.sf.cglib"/>
<param name="Filter" value="org.springframework"/>
下面
。
我剛剛發佈了一個開源的庫,可以非常好地過濾stacktrace。這裏是鏈接到一個簡短的文章有關庫:http://www.coderanch.com/t/661077/blogs/Open-Source-Java-library-stacktrace#3068017 而且,這裏是一個GitHub的鏈接來源:https://github.com/michaelgantman/Mgnt這裏是Maven的dependenciesfor它:
<dependency>
<groupId>com.github.michaelgantman</groupId>
<artifactId>MgntUtils</artifactId>
<version>1.04</version>
</dependency>
<dependency>
<groupId>com.github.michaelgantman</groupId>
<artifactId>MgntUtils</artifactId>
<version>1.04</version>
<classifier>javadoc</classifier>
</dependency>
<dependency>
<groupId>com.github.michaelgantman</groupId>
<artifactId>MgntUtils</artifactId>
<version>1.04</version>
<classifier>sources</classifier>
</dependency>
不能國防部正常log4j.properties或XML文件?你可以添加-Dlog4j.debug來找出它正在使用的配置文件 – davidfrancis
哦抱歉棧跟蹤,只需正確地閱讀問題。我從來沒有這樣做過 – davidfrancis