2011-07-05 44 views
2

我有以下配置:配置問題:僅記錄在孩子身上,但不在父母身上?

<log4net> 
    <!--<appenders />--> 

    <root /> 

    <logger name="MyProject"> 
     <priority value="INFO" /> 
     <appender-ref ref="rollingProjectFile" /> 
    </logger> 

    <logger name="MyProject.Jobs"> 
     <priority value="INFO" /> 
     <appender-ref ref="rollingJobsFile" /> 
    </logger> 
</log4net> 

兩個不同的記錄器內的兩個追加程序寫入到一個文本文件。由於我想爲命名空間MyProject.Jobs設置不同的文本文件,因此我定義了第二個記錄器。但是另外,相同的消息也記錄在父記錄器MyProject內。如果我不希望來自子記錄器的任何消息出現在父記錄器中,我如何實現完全分離?

THX任何的竅門 sl3dg3

回答

3

您可以試試:

<logger name="MyProject.Jobs" additivity="false"> 
... 
+0

我不知道該屬性沒有,學到東西,每天新。 –

0

我想您可以將部分記錄器過濾掉孩子記錄。雖然可能有更簡單的方法來完成這一點。

<filter type="log4net.Filter.LoggerMatchFilter"> 
    <loggerToMatch value="MyProject.Jobs" /> 
    <acceptOnMatch value="false" /> 
</filter> 
相關問題