簡體   English   中英

為每個執行的類記錄Log4j

[英]Logging Log4j For Each Executed Class

我正在使用Java,並且我有一個將執行某些類的xml文件。

這是xml的示例樣式

    <test name="Test1">
    <classes>
        <class name="com.foo.bar.test1"></class>
    </classes>
</test> 

<test name="Test2">
    <classes>
        <class name="com.foo.bar.test2"></class>
    </classes>
</test> 

<test name="Test3">
    <classes>
        <class name="com.foo.bar.test3"></class>
    </classes>
</test> 

我已經能夠使用Log4j進行日志記錄,但是我只在log4j.properties上進行了設置,因此所有日志都被附加在一起。

我想要每個執行的類的日志文件。

關於如何執行此操作的任何想法?

謝謝

由於Log4J在類加載器的生命周期內僅初始化一次,因此,達到此效果的唯一方法是在運行這些測試的整個程序中動態更改Log4J配置(我所指的程序是您所使用的程序)。重新編寫以解析XML文件並處理每個類)。

有關動態配置Log4J的信息,請參考Log4J的Javadocs。

另外,請記住,由於Log4J的作用域在類加載器中,因此除非您立即開始創建和初始化類加載器,否則您將無法同時運行那些“測試”類。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM