log4net RavenDB Appender не пишет журналы

Я нашел следующий проект (https://github.com/antonsamarsky/log4net.Raven ), который включил приложение log4net к RavenDb.

Я импортировал пакет nuget и настроил свой файл App.config следующим образом:

<configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
</configSections>

<connectionStrings>
    <add name="RavenLogs" connectionString="Url = http://localhost:8080; DefaultDatabase=MyLog"/>
</connectionStrings>

<log4net>
    <appender name="RavenAppender" type="log4net.Raven.RavenAppender, log4net.Raven">
          <filter type="log4net.Filter.LevelRangeFilter">
            <levelMin value="INFO" />
            <levelMax value="FATAL" />
          </filter>
          <connectionString value="RavenLogs"/>
          <maxNumberOfRequestsPerSession value="100"/>
          <bufferSize value="50" />
          <evaluator type="log4net.Core.LevelEvaluator">
            <threshold value="ERROR" />
          </evaluator>
        </appender>
</log4net>

<root>
  <level value="INFO" />
  <appender-ref ref="RavenAppender" />
</root>

не было никакой документации, кроме импорта nuget и конфигурации на GitGub. Когда я запускаю свою программу, я не получаю никаких ошибок, но я также ничего не вижу на сервере RavenDb.

Я даже пытался создать базу данных MyLog самостоятельно на RavenDb, если приложение не создает ее автоматически - все равно ничего.

Кто-нибудь знает, как пользоваться этим приложением?


person developer82    schedule 21.10.2014    source источник
comment
Вы пытались включить внутреннюю отладку log4net (установив log4net.Internal.Debug на true в качестве appSetting), чтобы увидеть, есть ли какие-либо ошибки при активации приложения?   -  person Jeroen Mostert    schedule 21.10.2014
comment
@JeroenMostert Привет, я не знаком с такими вариантами. Как я могу настроить его для отладки?   -  person developer82    schedule 21.10.2014
comment
Подробные инструкции доступны в FAQ.   -  person Jeroen Mostert    schedule 21.10.2014


Ответы (1)


В вашей конфигурации есть LevelEvaluator, который будет срабатывает, если событие журнала имеет уровень, равный или превышающий настроенный уровень. Ошибка вообще возникает в программе?

При настройке log4net настройте простой FileAppender вместе с вашей рабочей конфигурацией, чтобы вы могли легко видеть, какие данные вы должны/хотите видеть в своих настоящих журналах. Насколько вы знаете, вы забыли настроить инфраструктуру log4net, и FileAppender будет простым способом увидеть, есть ли проблема. Удалите фильтры и оценщики из вашего приложения RavenDB и добавьте их обратно после проверки, все ли работает.

Комментарий Jeroen о настройке внутреннего отладчика - это еще один способ сделать это, но он может не понадобиться для проблем с конфигурацией.

person samy    schedule 21.10.2014