Esempio n. 1
0
 static void ClearDummySinkStaticState()
 {
     DummyConsoleSink.Reset();
     DummyAuditSink.Reset();
     DummySink.Reset();
     DummySinkWithComplexParams.Reset();
     DummyRollingFileAuditSink.Reset();
     DummyRollingFileSink.Reset();
     DummySinkWithParams.Reset();
     DummyWithLevelSwitchSink.Reset();
 }
Esempio n. 2
0
        public void Fact3()
        {
            DummySink sink = new DummySink();
            LoggerSourceContextLevelOverrides switches = new LoggerSourceContextLevelOverrides(LogEventLevel.Warning,
                                                                                               KeyValuePair.Create("A", LogEventLevel.Debug),
                                                                                               KeyValuePair.Create("2", LogEventLevel.Debug),
                                                                                               KeyValuePair.Create("3", LogEventLevel.Debug),
                                                                                               KeyValuePair.Create("4", LogEventLevel.Debug),
                                                                                               KeyValuePair.Create("5", LogEventLevel.Debug),
                                                                                               KeyValuePair.Create("6", LogEventLevel.Debug),
                                                                                               KeyValuePair.Create("7", LogEventLevel.Debug),
                                                                                               KeyValuePair.Create("8", LogEventLevel.Debug),
                                                                                               KeyValuePair.Create("9", LogEventLevel.Debug),
                                                                                               KeyValuePair.Create("10", LogEventLevel.Debug)
                                                                                               );

            Logger logger = new LoggerConfiguration()
                            .Filter().MinimumLevel()
                            .WriteTo.Logger(c => c
                                            .Filter().Overrides(switches)
                                            .WriteTo.Sink(sink))
                            .CreateLogger();

            Logger defaultLogger = new LoggerConfiguration()
                                   .Filter().MinimumLevel()
                                   .WriteTo.Logger(c => c
                                                   .Filter().Overrides(switches)
                                                   .WriteTo.Sink(sink))
                                   .CreateLogger();

            Serilog.ILogger abLogger = logger.ForContext(Constants.SourceContextPropertyName, "A.B");
            Serilog.ILogger bLogger  = logger.ForContext(Constants.SourceContextPropertyName, "B");

            for (int i = 0; i < 100_000; i++)
            {
                bLogger.Information("b");
            }
            Assert.Empty(sink.Events);

            sink.Events.Clear();
            for (int i = 0; i < 100_000; i++)
            {
                abLogger.Debug("ab");
            }
            Assert.Equal(100000, sink.Events.Count);
            sink.Events.Clear();
        }
Esempio n. 3
0
        public void Fact4()
        {
            SelfLog.Enable(output.WriteLine);

            DummySink sink = new DummySink();

            Logger logger = new LoggerConfiguration()
                            .Enrich.FromLogContext()
                            .WriteTo.Sink(sink)
                            .CreateLogger();

            Serilog.ILogger aLogger = logger.ForContext(Constants.SourceContextPropertyName, "A");

            aLogger.Information("ab");

            Assert.Collection(sink.Events, e => Assert.Equal("ab", e.MessageTemplate.Text));

            for (int i = 0; i < 100_000; i++)
            {
                aLogger.Information("ab");
            }
        }