Я пытаюсь настроить мой проект C # для использования log4net для RavenDB .У меня уже есть log4net, работающий с FileAppender, но RavenAppender, похоже, сейчас не работает.Ниже приведены шаги, которые я предпринял:
Шаг 1. Установка log4net.Raven
Я установил библиотеку log4net.Raven, используя следующие инструкции консоли диспетчера пакетов NuGet (взятые из пакетавеб-сайт, указанный выше):
Install-Package log4net.Raven
Эта команда добавила библиотеку log4net.Raven к ссылкам на мой проект.
Шаг 2. Настройка Web.config
В моем вебФайл .config, у меня есть следующие настройки, большинство из которых копируются и вставляются из файла README для проекта log4net.Raven на GitHub (владелец log4net.Raven также имеет похожие настройки конфигурации опубликовано в его блоге ):
<!-- Example connection string config from blog -->
<configsections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net">
</configsections>
<connectionstrings>
<add connectionstring="Url=http://raven; DefaultDatabase=Log" name="RavenLogs">
<add connectionstring="Url=http://localhost:8080;user=asa;password=asa" name="SecureRaven">
</add>
</add>
</connectionstrings>
<!-- My current config -->
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
</configSections>
<connectionStrings>
<add name="RavenDB" connectionString="Url=http://localhost:8080;Database=MyDatabase" />
</connectionStrings>
<!-- Example log4net config from README.
My project uses these settings except for the connectionString value,
which is set to "RavenDB" to match the setting name above.
-->
<log4net>
<appender name="LogFileAppender" type="log4net.Appender.FileAppender">
<!-- LogFileAppender settings here -->
</appender>
<appender name="RavenAppender" type="log4net.Raven.RavenAppender">
<filter type="log4net.Filter.LevelRangeFilter">
<levelMin value="INFO" />
<levelMax value="FATAL" />
</filter>
<connectionString value="RavenDB"/>
<maxNumberOfRequestsPerSession value="100"/>
<bufferSize value="50" />
<evaluator type="log4net.Core.LevelEvaluator">
<threshold value="ERROR" />
</evaluator>
</appender>
<root>
<level value="ALL"/>
<appender-ref ref="LogFileAppender" />
<appender-ref ref="RavenAppender" />
</root>
</log4net>
Шаг 3: Вход из C # кода
В моем коде C # у меня есть следующее:
public class FooController : Controller
{
private static ILog _log = LogManager.GetLogger(typeof(FooController));
public ActionResult Index()
{
_log.Info("Hello World!");
return View("Index");
}
}
Этот код будет записан в файл журнала на моей рабочей станции, поэтому я знаю, что log4net в целом работает правильно.Но для RavenDB я проверял документы и журналы для MyDatabase через студию Raven в веб-браузере, и я не вижу никаких журналов уровня информации с сообщением «Hello World».
Кто-нибудь имеетесть идеи, в чем может быть проблема и как ее исправить?