Я использую log4net для регистрации прогресса моего веб-приложения, используя Log4PostSharp для AOP-injectify всех методов. Это дает желаемый эффект регистрации (почти) всего и хорошо.
Теперь у меня есть требование записать методы JUST 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"/>
Как видите, я пытаюсь ввести MethodName события регистрации через LocationInfo, но я все еще регистрирую все. РЕДАКТИРОВАТЬ: Как уже упоминалось в комментариях, я теперь включил DenyAllFilter, который я добавил после RTFM; -)
Кто-нибудь может помочь?
Спасибо,
Майк К.