我使用log4net記錄我的web應用程序的進度,使用Log4PostSharp來AOP注入所有方法。這具有記錄(幾乎)所有內容的理想效果,並且很好。過濾方法名稱上的log4net - 不能完全得到它
我現在有要求將Page_Load方法記錄到文件/控制檯。我顯然可以用log4postsharp類來做這件事,但是我會失去所有其他的日誌記錄。
我一直在尋找log4net中的過濾器,從StringMatch過濾器開始,但只查看正在記錄的消息,並且我在方法名稱後面。這讓我進入了PropertyFilter,但仍然沒有快樂。我log4net.config片段是這樣的:
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.PropertyFilter">
<key value="LocationInfo.MethodName"/>
<stringToMatch value="Page_Load"/>
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="d:\\xxxx\\yyyyy\\zzzzLog"/>
正如你所看到的,我想Key插入通過LocationInfo記錄事件的方法名,但我還是讓一切記錄下來。編輯:正如在評論中提到的,我現在包括我在RTFM後添加的DenyAllFilter ;-)
任何人都可以協助嗎?
謝謝
邁克K.
NB:我現在已經添加了<過濾器類型=「log4net.Filter.DenyAllFilter」 />後過濾停止一切被記錄,一旦我得到methodname過濾器的工作原理 – 2010-04-14 11:23:27
您是否添加了DenyAllFilter?你會得到一切或沒有記錄呢?你應該更新你的問題來反映你的進步。 – 2010-04-14 13:01:09