Как включить ведение журнала в процессе RhinoETL?
Я почти завершил свой первый процесс ETL, который использует Rhino ETL, и я смог выяснить, как использовать API, обратившись к тестам.
Отлично. У меня есть данные, проходящие через конвейер и записываемые в БД.
Однако я не могу понять, как включить ведение журнала.
- сборки log4net есть, объект log4net создается
- класс WithLoggingMixin, кажется, делает свое дело (хотя я должен признать, что немного не совсем уверен, что именно)
в файле log4net.config я настроил follingFileAppender, и он содержит следующее:
Но файл журнала не создается. Когда я звоню Debug()
в моем коде это ничего не делает, потому что log.IsDebugEnabled
ложно
Что мне не хватает?
2 ответа
В Rhino Etl 1.2.3 я смог войти в консоль, добавив следующее к элементам раздела конфигурации файла app.config программы:
<configSections>
<sectionGroup name="common">
<section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" />
</sectionGroup>
</configSections>
<common>
<logging>
<factoryAdapter type="Common.Logging.Simple.ConsoleOutLoggerFactoryAdapter, Common.Logging">
<arg key="level" value="DEBUG" />
<arg key="showLogName" value="true" />
<arg key="showDataTime" value="true" />
<arg key="dateTimeFormat" value="yyyy/MM/dd HH:mm:ss:fff" />
</factoryAdapter>
</logging>
</common>
Для входа в пункты назначения, отличные от консоли, документация Common.Logging содержит информацию о том, как подключить log4net.
Хорошо. Я покопался в [документации log4net][1] и нашел способ сделать это.
Сначала я переместил конфигурацию log4net в файл App.config (в разделе log4net), а затем выполнил
log4net.Config.XmlConfigurator.Configure();
во время инициализации. Теперь это работает.
[1]: http://logging.apache.org/log4net/release/manual/configuration.html Файлы "Документация Apache log4net"