private void ConfigureRepositoryWithLayoutWithMessageProperties(PatternLayout layout)
        {
            LogManager.Shutdown();

            _Rep      = LogManager.CreateRepository(Guid.NewGuid().ToString());
            _Appender = new RabbitMQAppender {
                Layout = layout
            };
            _Appender.ExchangeProperties.Name         = "log4Net.RabbitMQ.Tests";
            _Appender.ExchangeProperties.ExchangeType = "fanout";
            _Appender.ExchangeProperties.Durable      = true;

            _Appender.MessageProperties.AppId       = Guid.NewGuid().ToString();
            _Appender.MessageProperties.ContentType = new PatternLayout("text/plain");
            _Appender.MessageProperties.Persistent  = true;
            _Appender.MessageProperties.Priority    = new PatternLayout("%property{priority}");
            _Appender.MessageProperties.Topic       = new PatternLayout("%property{topic}");

            // An app could do something like this to customize the message priority and routing key on a message by message
            // basis.

            ThreadContext.Properties["priority"] = "0";
            ThreadContext.Properties["topic"]    = "log4net.RabbitMQ.Tests";

            _Appender.HostName = this.hostName;

            _Appender.ActivateOptions();

            BasicConfigurator.Configure(_Rep, _Appender);
            _Log = LogManager.GetLogger(_Rep.Name, GetType());

            BasicConfigurator.Configure(new ConsoleAppender {
                Layout = new SimpleLayout()
            });
        }
        private void ConfigureRepositoryWithLayout(PatternLayout layout)
        {
            LogManager.Shutdown();

            _Rep      = LogManager.CreateRepository(Guid.NewGuid().ToString());
            _Appender = new RabbitMQAppender {
                Layout = layout
            };
            _Appender.ActivateOptions();

            BasicConfigurator.Configure(_Rep, _Appender);
            _Log = LogManager.GetLogger(_Rep.Name, GetType());

            BasicConfigurator.Configure(new ConsoleAppender {
                Layout = new SimpleLayout()
            });
        }