Отбрасывание нескольких уровней журнала в диапазоне с log4net

Скажите, что я установил свой log4net регистратор minLevel и maxLevel кому: FATAL и DEBUG соответственно, но согласно некоторому сценарию я хочу отключить звук объектов журнала, записанных в WARN уровень, и сохраняет все другие уровни в диапазоне активными.

Действительно ли возможно так или иначе использовать 'дискретные' уровни уровней журнала вместо того, чтобы указать использование диапазона minLevel и maxLevel?

Я предполагаю, что это должно быть просто, но я не нашел log4net документов или примеров, занимающихся этой проблемой.

5
задан valiano 22 September 2017 в 14:44
поделиться

1 ответ

Вы можете использовать LevelMatchFilter в своем приложении.

Пример:

<appender name="FilteredConsoleAppender" type="log4net.Appender.ColoredConsoleAppender">
    <filter type="log4net.Filter.LevelMatchFilter">
        <levelToMatch value="DEBUG" />
    </filter>
    <filter type="log4net.Filter.LevelMatchFilter">
        <levelToMatch value="INFO" />
    </filter>
    <filter type="log4net.Filter.LevelMatchFilter">
        <levelToMatch value="ERROR" />
    </filter>
    <filter type="log4net.Filter.DenyAllFilter" />
    ...
</appender>

В этом примере будет выводиться только DEBUG; Сообщения INFO и ERROR. Его легко настроить в соответствии с вашими потребностями.

Примечание. Не забывайте DenyAllFilter в конце.

7
ответ дан 14 December 2019 в 01:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: