NServiceBus Общий хост и Common.Logging - PullRequest
0 голосов
/ 10 мая 2011

Народ,

Я получил, что логирование NServiceBus работает правильно, следуя указанным здесь указаниям: http://docs.particular.net/nservicebus/logging/

Однако я использую Common.Logging.Если я использую LogManager для Common.Logging, он не регистрируется.

Если я использую LogManager для log4net, все работает просто отлично.

У кого-нибудь есть понимание?

Ответы [ 3 ]

3 голосов
/ 12 мая 2011

Я понял это. Мне нужно было программно настроить Common.Logging вместо декларативного (в файле конфигурации).

По сути, я добавил эту строку до того, как настроил свободную шину:

    LogManager.Adapter = new Log4NetLoggerFactoryAdapter(new NameValueCollection { { "configType", "INLINE" } });
    SetLoggingLibrary.Log4Net(log4net.Config.XmlConfigurator.Configure);

И мой раздел регистрации на автобусах выглядит так:

.Log4Net<ColoredConsoleAppender>(cca =>
                                                 {
                                                    cca.Layout = patternLayout;
                                                 })
.Log4Net<RollingFileAppender>(fa =>
                                              {
                                                fa.File = "log/handler.log";
                                                fa.AppendToFile = true;
                                                fa.RollingStyle = RollingFileAppender.RollingMode.Size;
                                                fa.MaxSizeRollBackups = 5;
                                                fa.MaximumFileSize = "1000KB";
                                                fa.StaticLogFileName = true;
                                                fa.Layout = patternLayout;
                                              })

Это позволяет мне загружать уровни регистрации в конфигурационном файле, но оставить конфигурацию приложения в коде, как это было предложено Уди (и я думаю, что это отличная идея)

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

Если кому-то понадобится больше советов относительно того, что я сделал, просто прокомментируйте здесь, или если вы знаете, как получить детальный контроль, используя уровень ведения журнала nServiceBus, дайте мне знать об этом тоже.

0 голосов
/ 29 января 2016

Начиная с NServiceBus 5 поддерживается CommonLogging OOTB http://docs.particular.net/nservicebus/logging/common-logging

0 голосов
/ 11 мая 2011

Common.Logging служит абстракцией от log4net для внутренних целей NServiceBus.

...