public override void AddEvent(CapturingLoggerEvent loggerEvent) { //base.AddEvent(loggerEvent); - keeps a history of all events... if (Logger == null) Logger = Aspects.GetLogger("Common"); var msg = loggerEvent.RenderedMessage; var ex = loggerEvent.Exception; switch (loggerEvent.Level) { case LogLevel.Info: if(ex == null) Logger.Info(msg); else Logger.Info(msg, ex); break; case LogLevel.Warn: if(ex == null) Logger.Warn(msg); else Logger.Warn(msg, ex); break; case LogLevel.Error: if(ex == null) Logger.Error(msg); else Logger.Error(msg, ex); break; case LogLevel.Fatal: if(ex == null) Logger.Fatal(msg); else Logger.Fatal(msg, ex); break; default: //Trace, Debug, Other if(ex == null) Logger.Debug(msg); else Logger.Debug(msg, ex); break; } }
/// <summary> /// <see cref="CapturingLogger"/> instances send their captured log events to this method. /// </summary> public virtual void AddEvent(CapturingLoggerEvent loggerEvent) { _lastEvent = loggerEvent; lock (LoggerEvents) { LoggerEvents.Add(loggerEvent); } }
/// <summary> /// Create a new <see cref="CapturingLoggerEvent"/> and send it to <see cref="CapturingLoggerFactoryAdapter.AddEvent"/> /// </summary> /// <param name="level"></param> /// <param name="message"></param> /// <param name="exception"></param> protected override void WriteInternal(LogLevel level, object message, Exception exception) { LastEvent = new CapturingLoggerEvent(this, level, message, exception); Owner.AddEvent(LastEvent); }
/// <summary> /// Create a new <see cref="CapturingLoggerEvent"/> and send it to <see cref="CapturingLoggerFactoryAdapter.AddEvent"/> /// </summary> /// <param key="level"></param> /// <param key="message"></param> /// <param key="exception"></param> protected override void WriteInternal(LogLevel level, object message, Exception exception) { CapturingLoggerEvent ev = new CapturingLoggerEvent(this, level, message, exception); AddEvent(ev); }
/// <summary> /// Resets the <see cref="LastEvent"/> to <c>null</c>. /// </summary> public void ClearLastEvent() { _lastEvent = null; }
/// <summary> /// Create a new <see cref="CapturingLoggerEvent"/> and send it to <see cref="CapturingLoggerFactoryAdapter.AddEvent"/> /// </summary> /// <param name="level"></param> /// <param name="message"></param> /// <param name="exception"></param> protected override void WriteInternal(LogLevel level, object message, Exception exception) { CapturingLoggerEvent ev = new CapturingLoggerEvent(this, level, message, exception); AddEvent(ev); }