Настроить игнорировать существующие сообщения в файле журнала - PullRequest
0 голосов
/ 04 декабря 2018

Есть ли способ игнорировать существующие сообщения в файле журнала.У меня есть конфиг, как это:

<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
      <file value="Logs\\" />
      <lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%-5p %d{dd-MM-yyyy hh:mm:ss} [%thread] %level %logger - %message%newline" />
      </layout>
      <datePattern value="'EmailWatcher.'dd.MM.yyyy'.log'" />
      <staticLogFileName value="false" />
      <appendToFile value="true" />
      <rollingStyle value="Composite" />
      <maxSizeRollBackups value="10" />
      <maximumFileSize value="5MB" />
      <filter type="log4net.Filter.LevelRangeFilter">
        <levelMin value="INFO" />
        <levelMax value="WARN" />
      </filter>
    </appender>
    <appender name="ErrorLogFileAppender" type="log4net.Appender.RollingFileAppender">
      <file value="Logs\\" />
      <lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%-5p%d{ yyyy-MM-dd HH:mm:ss} – [%thread] %m method: %method %n stacktrace: %stacktrace{5} %n type: %type %n line: %line %n" />
      </layout>
      <datePattern value="'EmailWatcher.'dd.MM.yyyy'.log'" />
      <staticLogFileName value="false" />
      <appendToFile value="true" />
      <rollingStyle value="Composite" />
      <maxSizeRollBackups value="10" />
      <maximumFileSize value="5MB" />
      <filter type="log4net.Filter.LevelRangeFilter">
        <levelMin value="ERROR" />
        <levelMax value="FATAL" />
      </filter>
    </appender>
    <root>
      <level value="INFO" />
      <appender-ref ref="RollingLogFileAppender" />
      <appender-ref ref="ErrorLogFileAppender" />
    </root>

Существуют ли какие-либо существующие методы, которые могут проверить, если сообщение уже присутствует и добавить, если нет, иначе игнорировать.Текущее приложение запускается каждые x минут и регистрирует сообщения, но оно загромождает файл журнала.

INFO  04-12-2018 03:57:26 [12] INFO App - Connected to mailbox server...
INFO  04-12-2018 03:57:26 [12] INFO App - Looking for folder named 'Working'
INFO  04-12-2018 03:57:27 [12] INFO App - Connected to folder 'Working'
INFO  04-12-2018 03:57:27 [12] INFO App - Total items in the folder 'Working' is: 0
INFO  04-12-2018 03:57:52 [10] INFO App - Connecting to mailbox Office 365
INFO  04-12-2018 03:57:58 [10] INFO App - Connected to mailbox server...
INFO  04-12-2018 03:57:58 [10] INFO App - Looking for folder named 'Working'
INFO  04-12-2018 03:57:59 [10] INFO App - Connected to folder 'Working'
INFO  04-12-2018 03:57:59 [10] INFO App - Total items in the folder 'Working' is: 0

Я пытался использовать фильтр, но не знаю, как продолжить.Спасибо.

1 Ответ

0 голосов
/ 04 декабря 2018

Нашел ответ здесь.В основном, создание пользовательского фильтра и подключение к обоим приложениям.

Log4net, устранение дублирующихся сообщений

...