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);
     }
 }
Beispiel #3
0
 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);
        }
Beispiel #7
0
        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);
 }
Beispiel #15
0
 protected abstract object CaptureCore(object previousData, LoggerEvent loggerEvent, Verbosity verbosity);
Beispiel #16
0
 protected abstract void Capture(LoggerEvent loggerEvent);
 public virtual bool ShouldCaptureInspectors(LoggerEvent loggerEvent)
 {
     return(loggerEvent is InspectionEvent);
 }
Beispiel #18
0
 protected override EnvironmentData CaptureOverride(EnvironmentData previousData, LoggerEvent loggerEvent, Verbosity verbosity)
 {
     return(EnvironmentData.Create(verbosity));
 }
 public override bool ShouldCaptureInspectors(LoggerEvent loggerEvent)
 {
     return(_result);
 }
Beispiel #20
0
 protected virtual bool ShouldCapture(LoggerEvent loggerEvent)
 {
     return(true);
 }
Beispiel #21
0
 protected override bool ShouldCapture(LoggerEvent loggerEvent)
 {
     return(false);
 }
Beispiel #22
0
 protected override void Capture(LoggerEvent loggerEvent)
 {
 }
 protected override bool ShouldCapture(LoggerEvent loggerEvent)
 {
     return(filter.ShouldCapture(loggerEvent));
 }
Beispiel #24
0
 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());
 }