void CoreLog( object message, LoggerLevel level, Exception exception, object data) { if (ShouldLog(level)) { LoggerEvent le = message as LoggerEvent; if (le == null) { Exception e = message as Exception; string messageText; if (e == null) { messageText = Convert.ToString(message); } else { messageText = e.Message; exception = e; } le = new LoggerEvent { Message = messageText, }; } FinalizeCapture(le, level, exception, data); } }
void RunInspectors(LoggerEvent evt) { if (Instruments != null) { Instruments.RunInstruments(evt); } }
internal void MarkEnd(LoggerEvent evt) { if (_logger.InfoEnabled) { _logger.Info(evt); } }
private void FinalizeCapture( LoggerEvent evt, LoggerLevel level, Exception exception, object data) { StackFrame sf = null; if (this.NeedStackFrame) { sf = Utility.FindStackFrame(true); } evt.Exception = ExceptionData.Create(exception); evt.Level = level ?? evt.Level ?? LoggerLevel.Debug; evt.StackFrame = sf; evt.ThreadName = Thread.CurrentThread.Name ?? Thread.CurrentThread.ManagedThreadId.ToString(); evt.FinalizeTimestamp(DateTime.UtcNow); evt.Source = this.Name; if (evt.SourceLogger == null) { evt.SourceLogger = this; } Capturing(data, evt); Capture(evt); }
internal void CaptureForwarded_(LoggerEvent loggerEvent) { if (ShouldLog(loggerEvent.Level)) { Capturing(null, loggerEvent); Capture(loggerEvent); } }
void Capturing(object data, LoggerEvent evt) { // TODO Parse these values for wildcards and props var keys = FindOutputDataKeys(); Func <string, bool> filter = (k) => keys.Contains(k); evt.Capturing_(data, filter); }
public object Capture(LoggerEvent loggerEvent) { if (ShouldCapture()) { // TODO Get appropriate verbosity this.data = CaptureCore(data, loggerEvent, Verbosity.Normal); this.lastCapture = DateTime.Now; } // loggerEvent.InstrumentData[this.Name].Value = this.data; return(this.data); }
protected override void Capture(LoggerEvent loggerEvent) { if (loggerEvent.Level == null) { throw new NotImplementedException(); } RunInspectors(loggerEvent); try { target.Write(loggerEvent); } catch (Exception ex) { Traceables.FinalCaptureFailed(ex); target = Target.Null; } }
void CoreLog( string message, object[] args, LoggerLevel level, Exception exception, object data) { if (this.ShouldLog(level)) { LoggerEvent evt = new LoggerEvent { Message = message, }; if (args != null && args.Length > 0) { evt.Arguments.AddMany(args); exception = exception ?? args.OfType <Exception>().FirstOrDefault(); } FinalizeCapture(evt, level, exception, data); } }
internal void RunInstruments(LoggerEvent evt) { foreach (var i in this.Instruments) { if (i.ShouldSkipThis) { continue; } try { object result = i.Capture(evt); if (result != null) { evt.Data[i.Name].Value = evt; } } catch (Exception ex) { i.SkipThis(); Traceables.InstrumentCaptureFailed(i.Name, ex); } } }
protected override MemoryUsageData CaptureOverride(MemoryUsageData previousData, LoggerEvent loggerEvent, Verbosity verbosity) { return(MemoryUsageData.Create(Process.GetCurrentProcess())); }
protected sealed override object CaptureCore(object previousData, LoggerEvent loggerEvent, Verbosity verbosity) { return(CaptureOverride((TData)previousData, loggerEvent, verbosity)); }
protected abstract TData CaptureOverride(TData previousData, LoggerEvent loggerEvent, Verbosity verbosity);
public virtual bool ShouldCapture(LoggerEvent loggerEvent) { return(true); }
protected abstract object CaptureCore(object previousData, LoggerEvent loggerEvent, Verbosity verbosity);
protected abstract void Capture(LoggerEvent loggerEvent);
public virtual bool ShouldCaptureInspectors(LoggerEvent loggerEvent) { return(loggerEvent is InspectionEvent); }
protected override EnvironmentData CaptureOverride(EnvironmentData previousData, LoggerEvent loggerEvent, Verbosity verbosity) { return(EnvironmentData.Create(verbosity)); }
public override bool ShouldCaptureInspectors(LoggerEvent loggerEvent) { return(_result); }
protected virtual bool ShouldCapture(LoggerEvent loggerEvent) { return(true); }
protected override bool ShouldCapture(LoggerEvent loggerEvent) { return(false); }
protected override void Capture(LoggerEvent loggerEvent) { }
protected override bool ShouldCapture(LoggerEvent loggerEvent) { return(filter.ShouldCapture(loggerEvent)); }
public override bool ShouldCaptureInspectors(LoggerEvent loggerEvent) { return(this.items.All(t => t.ShouldCaptureInspectors(loggerEvent))); }
protected override GCData CaptureOverride( GCData previousData, LoggerEvent loggerEvent, Verbosity verbosity) { return(GCData.Create()); }