コード例 #1
0
        public void RoutesToCommonLogging()
        {
            //            CommonLoggingAppender appender = new CommonLoggingAppender();
            //            appender.Layout = new PatternLayout("%level - %class.%method: %message");
            //            BasicConfigurator.Configure(stm);

            Stream stm = this.GetType().Assembly.GetManifestResourceStream(this.GetType().FullName + "_log4net.config.xml");

            XmlConfigurator.Configure(stm);

            CapturingLoggerFactoryAdapter adapter = new CapturingLoggerFactoryAdapter();

            LogManager.Adapter = adapter;

            string    message   = "testmessage";
            Exception exception = new Exception("testexception");

            adapter.ClearLastEvent();
            log4net.LogManager.GetLogger(this.GetType()).Debug(message, exception);
            Assert.AreEqual(this.GetType().FullName, adapter.LastEvent.Source.Name);
            Assert.AreEqual(string.Format("{0} - {1}.{2}: {3}", Level.Debug, this.GetType().FullName, MethodBase.GetCurrentMethod().Name, message), adapter.LastEvent.MessageObject.ToString());
            Assert.AreSame(exception, adapter.LastEvent.Exception);

            adapter.ClearLastEvent();
            log4net.LogManager.GetLogger(this.GetType()).Warn(message, exception);
            Assert.AreEqual(this.GetType().FullName, adapter.LastEvent.Source.Name);
            Assert.AreEqual(string.Format("{0} - {1}.{2}: {3}", Level.Warn, this.GetType().FullName, MethodBase.GetCurrentMethod().Name, message), adapter.LastEvent.MessageObject.ToString());
            Assert.AreSame(exception, adapter.LastEvent.Exception);
        }
コード例 #2
0
        public void RoutesToCommonLogging()
        {
            // configure for capturing
            CapturingLoggerFactoryAdapter adapter = new CapturingLoggerFactoryAdapter();

            LogManager.Adapter = adapter;
            var configuration = new LoggerConfiguration().ReadFrom.AppSettings().Enrich.WithProperty("Common.Logging.Type", typeof(CommonLoggingSerilogTests).FullName);
            var logger        = configuration.CreateLogger();

            var exception = new Exception();

            adapter.ClearLastEvent();

            var position  = new { Latitude = 25, Longitude = 134 };
            var elapsedMs = 34;

            logger.Error(exception, "Processed {@Position} in {Elapsed:000} ms.", position, elapsedMs);

            Assert.AreEqual(typeof(CommonLoggingSerilogTests).FullName, adapter.LastEvent.Source.Name);
            Assert.AreEqual("Processed { Latitude: 25, Longitude: 134 } in 034 ms.", adapter.LastEvent.RenderedMessage);
            Assert.AreSame(exception, adapter.LastEvent.Exception);
        }
コード例 #3
0
        public void RoutesToCommonLogging()
        {
            LoggingConfiguration cfg    = new LoggingConfiguration();
            CommonLoggingTarget  target = new CommonLoggingTarget("${level:uppercase=true}|${logger}|${message}");

            cfg.LoggingRules.Add(new LoggingRule("*", LogLevel.Trace, target));

            NLogLogManager.Configuration = cfg;

            // configure for capturing
            CapturingLoggerFactoryAdapter adapter = new CapturingLoggerFactoryAdapter();

            LogManager.Adapter = adapter;

            string msg = "testmessage";

            Exception ex = new Exception("testexception");

            adapter.ClearLastEvent();
            NLogLogManager.GetLogger("myLogger").DebugException(msg, ex);
            Assert.AreEqual("myLogger", adapter.LastEvent.Source.Name);
            Assert.AreEqual(string.Format("DEBUG|myLogger|{0}", msg), adapter.LastEvent.RenderedMessage);
            Assert.AreSame(ex, adapter.LastEvent.Exception);
        }