Я согласен с @gwhitake, что вы можете использовать фильтр диапазона уровней.Однако я также хочу добавить, что вы можете использовать фильтр LevelMatch
, если вы просто хотите выбрать один уровень.Этот фильтр также позволяет вам добавить еще один фильтр в конце, чтобы вы могли создать фильтр с двумя или более уровнями, даже если они не расположены рядом друг с другом в порядке.
Например,следующий фильтр будет захватывать только сообщения DEBUG и ERROR (просто в качестве примера):
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="DEBUG"/>
</filter>
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="ERROR"/>
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
Единственный ключ здесь заключается в том, что нам нужно иметь DenyAllFilter в конце.Это говорит регистратору, что если он достигает этой строки, не регистрируйте его.Таким образом он будет регистрировать сообщения отладки, сообщения об ошибках и ничего больше.
Существует множество способов манипулировать фильтром, чтобы получить именно то, что вы хотите.Вот статья (полный отказ от ответственности: я написал ее), в которой показано, как сделать с фильтром множество разных вещей, помимо диапазона уровней:
http://www.codeproject.com/KB/dotnet/Log4net_Tutorial.aspx