Esempio n. 1
0
        static void SetupLogging(EndpointConfiguration endpointConfiguration)
        {
            var logDir = ".\\logfiles\\";

            if (!Directory.Exists(logDir))
            {
                Directory.CreateDirectory(logDir);
            }

            var logFile = Path.Combine(logDir, endpointConfiguration.EndpointName + ".txt");

            if (File.Exists(logFile))
            {
                File.Delete(logFile);
            }

            var logLevel         = "WARN";
            var logLevelOverride = Environment.GetEnvironmentVariable("tests_loglevel");

            if (!string.IsNullOrEmpty(logLevelOverride))
            {
                logLevel = logLevelOverride;
            }

            SetLoggingLibrary.Log4Net(null,
                                      Logging.Loggers.Log4NetAdapter.Log4NetAppenderFactory.CreateRollingFileAppender(logLevel, logFile));
        }
        public void UsingAppConfig()
        {
            //This would be the contents of your app.config file
            var appConfig =
                @"<?xml version=""1.0"" encoding=""utf-8"" ?>
<configuration>
    <configSections>
	    <section name=""log4net"" type=""log4net.Config.Log4NetConfigurationSectionHandler, log4net"" />
    </configSections>
    <log4net>
        <appender name=""appender"" type=""log4net.Appender.MemoryAppender""/>
	    <root>
		    <level value=""DEBUG"" />
		    <appender-ref ref=""appender"" />
	    </root>
    </log4net>
</configuration>";

            //A helper method so we can load the above appconfig into Log4Net
            XmlConfigurator.Configure(appConfig.ToStream());

            SetLoggingLibrary.Log4Net();
            Configure.With()
            .DefaultBuilder();

            var loggingEvents = GetMessagesFromMemoryAppender()
                                .ToList();

            Assert.IsNotEmpty(loggingEvents);
        }
        void IConfigureLogging.Configure(IConfigureThisEndpoint specifier)
        {
            var logToConsole = GetStdHandle(STD_OUTPUT_HANDLE) != IntPtr.Zero;

            if (Log4NetConfigurator.Log4NetExists)
            {
                SetLoggingLibrary.Log4Net(null, Log4NetAppenderFactory.CreateRollingFileAppender(null, "logfile"));

                if (logToConsole)
                {
                    SetLoggingLibrary.Log4Net(null, Log4NetAppenderFactory.CreateColoredConsoleAppender("Info"));
                }
            }
            else if (NLogConfigurator.NLogExists)
            {
                const string layout = "${longdate}|${level:uppercase=true}|${logger}|${message}${onexception:${newline}${exception:format=tostring}}";

                var targets = new List <object> {
                    NLogTargetFactory.CreateRollingFileTarget("logfile", layout)
                };

                if (logToConsole)
                {
                    targets.Add(NLogTargetFactory.CreateColoredConsoleTarget(layout));
                }

                SetLoggingLibrary.NLog(null, targets.ToArray());
            }
            else
            {
                ConfigureInternalLog4Net.Production(logToConsole);
            }
        }
        void IConfigureLogging.Configure(IConfigureThisEndpoint specifier)
        {
            SetLoggingLibrary.Log4Net <RollingFileAppender>(null,
                                                            a =>
            {
                a.CountDirection     = 1;
                a.DatePattern        = "yyyy-MM-dd";
                a.RollingStyle       = RollingFileAppender.RollingMode.Composite;
                a.MaxFileSize        = 1024 * 1024;
                a.MaxSizeRollBackups = 10;
                a.LockingModel       = new FileAppender.MinimalLock();
                a.StaticLogFileName  = true;
                a.File         = "logfile";
                a.AppendToFile = true;
            });

            if (GetStdHandle(STD_OUTPUT_HANDLE) == IntPtr.Zero)
            {
                return;
            }

            SetLoggingLibrary.Log4Net <ColoredConsoleAppender>(null,
                                                               a =>
            {
                LiteLoggingHandler.PrepareColors(a);
                a.Threshold = Level.Info;
            }
                                                               );
        }
    public static void ConfigureLogging()
    {
        SetLoggingLibrary.Log4Net <RollingFileAppender>(null,
                                                        a =>
        {
            a.CountDirection     = 1;
            a.DatePattern        = "yyyy-MM-dd";
            a.RollingStyle       = RollingFileAppender.RollingMode.Composite;
            a.MaxFileSize        = 1024 * 1024;
            a.MaxSizeRollBackups = 10;
            a.LockingModel       = new FileAppender.MinimalLock();
            a.StaticLogFileName  = true;
            a.File           = "logfile.txt";
            a.AppendToFile   = true;
            a.ImmediateFlush = true;
        });

        SetLoggingLibrary.Log4Net <ColoredConsoleAppender>(null,
                                                           consoleAppender =>
        {
            PrepareColors(consoleAppender);
            consoleAppender.Threshold = Level.Info;
        }
                                                           );
    }
Esempio n. 6
0
        public void Init()
        {
            Bootstrapper.With.Container(new WindsorContainerExtension())
            .Start();
            SetLoggingLibrary.Log4Net(log4net.Config.XmlConfigurator.Configure);
//            Mapper.AssertConfigurationIsValid();
        }
        /// <summary>
        /// http://support.nservicebus.com/customer/portal/articles/859362-using-ravendb-in-nservicebus-%E2%80%93-connecting
        /// </summary>
        public void Init()
        {
            SetLoggingLibrary.Log4Net(XmlConfigurator.Configure);
            var eventPersistenceFactory = EventPersistenceFactoryConfiguration.CreateFactory();
            var container = new Container(x =>
            {
                x.For <IEventPublisher>().Use <NServiceBusEventPublisher>();
                x.For <IEventMappings>()
                .LifecycleIs(new SingletonLifecycle())
                .Use(() => new NServiceBusDomainEventMappingFactory().CreateMappingCollection());
                x.For <IEventPersistence>()
                .LifecycleIs(new SingletonLifecycle())
                .Use(new EventPersistenceWithLogging(eventPersistenceFactory.CreateEventPersistence()));
                x.For <IEventStore>().Use <EventStore>();
                x.For <IDomainRepository>().Use <DomainRepository>();
                x.For <ISendEmails>().Use <BlackHoleEmailSender>();
                x.For <IGeneratePassword>().Use <RandomNumberPasswordGenerator>();
                x.For <IHash>().Use <SHA512Hasher>();
                //Doing this as I cannot see a route to constructor injection with
                //Sagas that work with the NServiceBus Test framework
                x.FillAllPropertiesOfType <IDomainRepository>();
            });

            Configure.With()
            .Log4Net()
            .StructureMapBuilder(container)
            .EnablePerformanceCounters();


            LogManager.GetLogger(this.GetType()).Info("Initialized");
        }
Esempio n. 8
0
 public void Init()
 {
     SetLoggingLibrary.Log4Net(XmlConfigurator.Configure);
     Configure.With()
     .Log4Net()
     .StructureMapBuilder()
     .EnablePerformanceCounters();
 }
Esempio n. 9
0
        public void Init()
        {
            SetLoggingLibrary.Log4Net(log4net.Config.XmlConfigurator.Configure);

            //var l = new log4net.Appender.RollingFileAppender();

            //l.fi
        }
 void IConfigureLogging.Configure(IConfigureThisEndpoint specifier)
 {
     SetLoggingLibrary.Log4Net <AzureAppender>(null,
                                               a =>
     {
         a.ScheduledTransferPeriod = 10;
     });
 }
 void IConfigureLogging.Configure(IConfigureThisEndpoint specifier)
 {
     SetLoggingLibrary.Log4Net <ColoredConsoleAppender>(null,
                                                        a =>
     {
         LiteLoggingHandler.PrepareColors(a);
         a.Threshold = Level.Info;
     }
                                                        );
 }
Esempio n. 12
0
        public void Init()
        {
            SetLoggingLibrary.Log4Net(() => log4net.Config.XmlConfigurator.Configure());

            using (var licenseStream = Assembly.GetExecutingAssembly().GetManifestResourceStream("ServiceBus.Management.License.xml"))
                using (var sr = new StreamReader(licenseStream))
                {
                    Configure.Instance.License(sr.ReadToEnd());
                }

            Configure.Transactions.Advanced(t => t.DisableDistributedTransactions());
        }
Esempio n. 13
0
 void IConfigureLogging.Configure(IConfigureThisEndpoint specifier)
 {
     if (Log4NetConfigurator.Log4NetExists)
     {
         SetLoggingLibrary.Log4Net(null, Log4NetAppenderFactory.CreateColoredConsoleAppender("Info"));
     }
     else if (NLogConfigurator.NLogExists)
     {
         SetLoggingLibrary.NLog(null, NLogTargetFactory.CreateColoredConsoleTarget());
     }
     else
     {
         ConfigureInternalLog4Net.Integration();
     }
 }
        public void UsingCodeWithImplied()
        {
            var appender = new MemoryAppender();

            BasicConfigurator.Configure(appender);

            //This will log to all appenders currently configured in Log4net
            SetLoggingLibrary.Log4Net();
            Configure.With()
            .DefaultBuilder();

            var loggingEvents = appender.GetEvents()
                                .ToList();

            Assert.IsNotEmpty(loggingEvents);
        }
Esempio n. 15
0
        static void SetupLogging(EndpointConfiguration endpointConfiguration)
        {
            var logDir = ".\\logfiles\\";

            Directory.CreateDirectory(logDir);

            var logFile = Path.Combine(logDir, endpointConfiguration.EndpointName + ".txt");

            if (File.Exists(logFile))
            {
                File.Delete(logFile);
            }

            var logLevel = "INFO";

            SetLoggingLibrary.Log4Net(null, Log4NetAppenderFactory.CreateRollingFileAppender(logLevel, logFile));
        }
Esempio n. 16
0
        public Form1()
        {
            InitializeComponent();

            SetLoggingLibrary.Log4Net(log4net.Config.XmlConfigurator.Configure);

            _bus = Configure.With()
                   .Log4Net()
                   .DefaultBuilder()
                   .XmlSerializer()
                   .MsmqTransport()
                   .IsTransactional(false)
                   .PurgeOnStartup(false)
                   .UnicastBus()
                   .ImpersonateSender(false)
                   .CreateBus()
                   .Start();
        }
        public Log4NetFiltering()
        {
            #region Log4NetFilterUsage

            ConsoleAppender appender = new ConsoleAppender
            {
                Threshold = Level.Debug,
                Layout    = new SimpleLayout(),
            };

            appender.AddFilter(new NServiceBusLogFilter());
            appender.ActivateOptions();

            BasicConfigurator.Configure(appender);

            SetLoggingLibrary.Log4Net();

            #endregion
        }
Esempio n. 18
0
    static void Main()
    {
        Console.Title = "Samples.Logging.Log4NetCustom";
        #region ConfigureLog4Net
        var layout = new PatternLayout
        {
            ConversionPattern = "%d [%t] %-5p %c [%x] - %m%n"
        };
        layout.ActivateOptions();
        var appender = new ConsoleAppender
        {
            Threshold = Level.Info,
            Layout    = layout
        };
        // Note that no ActivateOptions is required since NSB 4 does this internally
        #endregion

        #region UseConfig
        // Pass the appenders to NServiceBus
        SetLoggingLibrary.Log4Net(null, appender);

        // Then continue with the bus configuration
        Configure.Serialization.Json();
        var configure = Configure.With();
        configure.DefineEndpointName("Samples.Logging.Log4NetCustom");
        #endregion

        configure.DefaultBuilder();
        configure.InMemorySagaPersister();
        configure.UseInMemoryTimeoutPersister();
        configure.InMemorySubscriptionStorage();
        configure.UseTransport <Msmq>();
        using (var startableBus = configure.UnicastBus().CreateBus())
        {
            var bus       = startableBus.Start(() => configure.ForInstallationOn <Windows>().Install());
            var myMessage = new MyMessage();
            bus.SendLocal(myMessage);

            Console.WriteLine("Press any key to exit");
            Console.ReadKey();
        }
    }
    void IWantCustomLogging.Init()
    {
        PatternLayout layout = new PatternLayout
        {
            ConversionPattern = "%d %-5p %c - %m%n"
        };

        layout.ActivateOptions();
        ConsoleAppender appender = new ConsoleAppender
        {
            Layout    = layout,
            Threshold = Level.Info
        };

        appender.ActivateOptions();

        BasicConfigurator.Configure(appender);

        SetLoggingLibrary.Log4Net();
    }
Esempio n. 20
0
    public static void ConfigureLogging(Level threshold)
    {
        PatternLayout layout = new PatternLayout
        {
            ConversionPattern = "%d %-5p %c - %m%n"
        };

        layout.ActivateOptions();
        ConsoleAppender appender = new ConsoleAppender
        {
            Layout    = layout,
            Threshold = threshold
        };

        appender.ActivateOptions();

        BasicConfigurator.Configure(appender);

        SetLoggingLibrary.Log4Net();
    }
Esempio n. 21
0
        Usage()
        {
            #region Log4NetInCode

            PatternLayout layout = new PatternLayout
            {
                ConversionPattern = "%d [%t] %-5p %c [%x] - %m%n"
            };
            layout.ActivateOptions();
            ConsoleAppender consoleAppender = new ConsoleAppender
            {
                Threshold = Level.Debug,
                Layout    = layout
            };
            // Note that no ActivateOptions is required since NSB 3 does this internally

            //Pass the appender to NServiceBus
            SetLoggingLibrary.Log4Net(null, consoleAppender);

            #endregion
        }
        public void Init()
        {
            var mongoConnectionString = ConfigurationManager.AppSettings["MongoEventStoreConnectionString"];
            var mongoDatabase         = ConfigurationManager.AppSettings["MongoEventStoreDatabaseName"];

            //Move to config so that it can be changed
            //And Use a factory, this is DIRTY
            var container = new Container(expression =>
                                          expression.For <IAuditInformationRepository>()
                                          .Use <MongoAuditInformationRepository>()
                                          .Ctor <string>("connectionString")
                                          .Is(mongoConnectionString)
                                          .Ctor <string>("databaseName")
                                          .Is(mongoDatabase)
                                          );

            SetLoggingLibrary.Log4Net(XmlConfigurator.Configure);
            Configure.With()
            .StructureMapBuilder(container)
            .EnablePerformanceCounters()
            .Log4Net();
        }
        public void Configure(IConfigureThisEndpoint specifier)
        {
            SetLoggingLibrary.Log4Net();

            var appender = new ColoredConsoleAppender
            {
                Layout    = new SimpleLayout(),
                Threshold = Level.Debug
            };

            appender.AddMapping(
                new ColoredConsoleAppender.LevelColors
            {
                Level     = Level.Debug,
                ForeColor = ColoredConsoleAppender.Colors.Purple
            });
            appender.AddMapping(
                new ColoredConsoleAppender.LevelColors
            {
                Level     = Level.Info,
                ForeColor = ColoredConsoleAppender.Colors.Green
            });
            appender.AddMapping(
                new ColoredConsoleAppender.LevelColors
            {
                Level     = Level.Warn,
                ForeColor = ColoredConsoleAppender.Colors.Yellow | ColoredConsoleAppender.Colors.HighIntensity
            });
            appender.AddMapping(
                new ColoredConsoleAppender.LevelColors
            {
                Level     = Level.Error,
                ForeColor = ColoredConsoleAppender.Colors.Red | ColoredConsoleAppender.Colors.HighIntensity
            });

            appender.ActivateOptions();

            log4net.Config.BasicConfigurator.Configure(appender);
        }
Esempio n. 24
0
        public Configure GetConfiguration(RunDescriptor runDescriptor, EndpointConfiguration endpointConfiguration, IConfigurationSource configSource)
        {
            var settings = runDescriptor.Settings;

            SetLoggingLibrary.Log4Net(null, new ContextAppender(runDescriptor.ScenarioContext, endpointConfiguration));


            var types = GetTypesToUse(endpointConfiguration);

            var transportToUse = settings.GetOrNull("Transport");

            Configure.Features.Enable <Features.Sagas>();

            SettingsHolder.SetDefault("ScaleOut.UseSingleBrokerQueue", true);

            var config = Configure.With(types)
                         .DefineEndpointName(endpointConfiguration.EndpointName)
                         .CustomConfigurationSource(configSource)
                         .DefineBuilder(settings.GetOrNull("Builder"))
                         .DefineSerializer(settings.GetOrNull("Serializer"))
                         .DefineTransport(settings)
                         .DefineSagaPersister(settings.GetOrNull("SagaPersister"));

            if (transportToUse == null ||
                transportToUse.Contains("Msmq") ||
                transportToUse.Contains("SqlServer") ||
                transportToUse.Contains("RabbitMq"))
            {
                config.UseInMemoryTimeoutPersister();
            }

            if (transportToUse == null || transportToUse.Contains("Msmq") || transportToUse.Contains("SqlServer"))
            {
                config.DefineSubscriptionStorage(settings.GetOrNull("SubscriptionStorage"));
            }

            return(config.UnicastBus());
        }
    public void Filtering()
    {
        #region Log4NetFiltering

        var appender = new ColoredConsoleAppender
        {
            Threshold = Level.Debug,
            Layout    = new SimpleLayout(),
        };

        appender.AddFilter(new LoggerMatchFilter
        {
            LoggerToMatch = "MyNamespace"
        });
        appender.AddFilter(new DenyAllFilter());
        appender.ActivateOptions();

        BasicConfigurator.Configure(appender);

        SetLoggingLibrary.Log4Net();

        #endregion
    }
        public void Init()
        {
            SetLoggingLibrary.Log4Net(XmlConfigurator.Configure);

            ObjectFactory.Initialize(x => x.Scan(y =>
            {
                var assembliesToSkip = AssembliesToSkip().Select(Path.GetFileNameWithoutExtension);
                y.AssembliesFromApplicationBaseDirectory(assembly => !assembliesToSkip.Contains(assembly.GetName().Name));
                y.LookForRegistries();
            }));

            var config = Configure.With(AssembliesToScan())
                         .CustomConfigurationSource(new PluginConfigurationSource())
                         .StructureMapBuilder(ObjectFactory.Container)
                         .AdvancedXmlSerializer();

            if (Transport == Transport.UiPriority)
            {
                config = config.MsmqTransport <MsmqUiPriorityTransport>().IsTransactional(IsTransactional).IsolationLevel(IsolationLevel.ReadUncommitted)
                         .PurgeOnStartup(false);
            }
            else if (Transport == Transport.Routable)
            {
                config = config.MsmqTransport <MsmqRoutableTransport>().IsTransactional(IsTransactional).IsolationLevel(IsolationLevel.ReadUncommitted)
                         .HostingMode(RoutableTransportMode)
                         .PurgeOnStartup(false);
            }

            var bus = config.Sagas()
                      .TpDatabaseSagaPersister()
                      .TpUnicastBus()
                      //.ImpersonateSender(true)
                      .LoadMessageHandlers(GetHandlersOrder()).CreateBus();

            bus.Start();
        }
    protected override void OnStart(string[] args)
    {
        #region logging
        PatternLayout layout = new PatternLayout
        {
            ConversionPattern = "%d %-5p %c - %m%n"
        };
        layout.ActivateOptions();
        ConsoleAppender appender = new ConsoleAppender
        {
            Layout    = layout,
            Threshold = Level.Info
        };
        appender.ActivateOptions();

        BasicConfigurator.Configure(appender);

        SetLoggingLibrary.Log4Net();
        #endregion

        #region create-config
        Configure configure = Configure.With();
        configure.DefineEndpointName("Samples.FirstEndpoint");
        #endregion

        #region container
        ContainerBuilder builder = new ContainerBuilder();
        //configure custom services
        //builder.RegisterInstance(new MyService());
        IContainer container = builder.Build();
        configure.AutofacBuilder(container);
        #endregion

        #region serialization
        configure.JsonSerializer();
        #endregion

        #region transport
        configure.MsmqTransport();
        #endregion

        #region sagas
        configure.Sagas();
        #endregion

        #region persistence
        configure.InMemorySagaPersister();
        configure.UseInMemoryTimeoutPersister();
        configure.InMemorySubscriptionStorage();
        #endregion

        #region critical-errors
        Configure.Instance.DefineCriticalErrorAction(() =>
        {
            //Write log entry in version 3 since this is not done by default.
            logger.Fatal("CRITICAL Error");

            // Kill the process on a critical error
            string output = "Critical error was encountered by NServiceBus:\nNServiceBus is shutting down.";
            Environment.FailFast(output);
        });
        #endregion

        #region start-bus
        bus = configure.UnicastBus()
              .CreateBus()
              .Start(() => configure.ForInstallationOn <Windows>().Install());
        #endregion

        bus.SendLocal(new MyMessage());
    }
Esempio n. 28
0
    protected override void OnStart(string[] args)
    {
        #region logging
        PatternLayout layout = new PatternLayout
        {
            ConversionPattern = "%d %-5p %c - %m%n"
        };
        layout.ActivateOptions();
        ConsoleAppender appender = new ConsoleAppender
        {
            Layout    = layout,
            Threshold = Level.Info
        };
        appender.ActivateOptions();

        BasicConfigurator.Configure(appender);

        SetLoggingLibrary.Log4Net();
        #endregion

        #region create-config
        Configure configure = Configure.With();
        #endregion
        #region endpoint-name
        configure.DefineEndpointName("Samples.FirstEndpoint");
        #endregion

        #region container
        ContainerBuilder builder = new ContainerBuilder();
        //configure your custom services
        //builder.RegisterInstance(new MyService());
        IContainer container = builder.Build();
        configure.AutofacBuilder(container);
        #endregion

        #region serialization
        Configure.Serialization.Json();
        #endregion

        #region transport
        configure.UseTransport <Msmq>();
        #endregion

        #region sagas
        Configure.Features.Enable <Sagas>();
        #endregion

        #region persistence
        configure.InMemorySagaPersister();
        configure.UseInMemoryTimeoutPersister();
        configure.InMemorySubscriptionStorage();
        #endregion

        #region critical-errors
        Configure.Instance.DefineCriticalErrorAction((errorMessage, exception) =>
        {
            // Log the critical error
            logger.Fatal(string.Format("CRITICAL: {0}", errorMessage), exception);

            // Kill the process on a critical error
            Environment.FailFast(string.Format("The following critical error was encountered by NServiceBus:\n{0}\nNServiceBus is shutting down.", errorMessage), exception);
        });
        #endregion

        #region start-bus
        bus = configure.UnicastBus()
              .CreateBus()
              .Start(() => configure.ForInstallationOn <Windows>().Install());
        #endregion
    }
Esempio n. 29
0
 public void Configure(IConfigureThisEndpoint specifier)
 {
     // setup your logging infrastructure then call
     SetLoggingLibrary.Log4Net();
 }
Esempio n. 30
0
 public void Init()
 {
     Configure.Instance.RoutingSlips().Diagnostics();
     SetLoggingLibrary.Log4Net();
 }