public void ConcatingEnumerationOfWriters()
        {
            StringSerializer[] w = new StringSerializer[]
            {
                new StringSerializer(),
                new StringSerializer(),
                new StringSerializer(),
                new StringSerializer(),
                new StringSerializer()
            };

            ILogFactory logFactory = new DefaultLogFactory();

            logFactory.AddSerializer(w[0]);

            ILog l1 = logFactory.Scope("L1");

            l1.Debug("M1");
            EnsureMessageCount(w, 1, 0, 0, 0, 0);

            l1.Factory.AddSerializer(w[1]);
            l1.Debug("M3");
            EnsureMessageCount(w, 2, 0, 0, 0, 0);

            ILog l2 = l1.Factory.Scope("L2");

            l2.Debug("M3");
            EnsureMessageCount(w, 3, 1, 0, 0, 0);

            l2.Factory.AddSerializer(w[2]);
            l2.Debug("M4");
            EnsureMessageCount(w, 4, 2, 0, 0, 0);

            ILog l3 = l2.Factory.Scope("L3");

            l3.Debug("M5");
            EnsureMessageCount(w, 5, 3, 1, 0, 0);

            l1.Factory.AddSerializer(w[3]);
            ILog l4 = l1.Factory.Scope("L4");

            l4.Debug("M6");
            EnsureMessageCount(w, 6, 4, 1, 1, 0);

            l4.Factory.AddSerializer(w[4]);
            ILog l5 = l4.Factory.Scope("L5");

            l4.Debug("M7");
            EnsureMessageCount(w, 7, 5, 1, 2, 0);

            l5.Debug("M8");
            EnsureMessageCount(w, 8, 6, 1, 3, 1);
        }
        public void BaseComposition()
        {
            ILogFactory logFactory = new DefaultLogFactory();

            logFactory
            .AddConsole()
            .AddLog4net();

            ILog log = logFactory.Scope("Application");

            log.Debug("Hello, {0}!", "World");
        }