public override string Format(RxLoggerConfiguration configuration, RxLogEntryMeta meta, TLog instance, FormatFlags format) { Guard.NotNull(configuration); Guard.NotNull(instance); // right then, this is what we do // we format out the meta data that we want, and then just use a simple method to get the // rest of the formatted text var sb = new StringBuilder(); if (format == FormatFlags.IncludeMeta) { var formattedMeta = configuration.Formatting.FormatMeta(meta); if (_multiLine) { sb.AppendLine(formattedMeta); } else { sb.Append(formattedMeta + " "); } } BuildText(sb, configuration, instance); return(sb.ToString()); }
public RxLogEntryMetaTests() { _lineNo = 121; _memberName = "member"; _meta = new RxLogEntryMeta(this.GetType(), _memberName, _lineNo); }
public LoggingTimerContext(ITimerContext context, RxLogEntryMeta meta) { Guard.NotNull(context); _context = context; _meta = meta; }
public void CreateGenericSuccessfullyTest() { var meta = new RxLogEntryMeta(this.GetType(), "member6", 1); const string specifics = "Test"; var entry = new RxLogEntry <string>(meta, specifics); Assert.Same(meta, entry.Meta); Assert.Same(specifics, entry.Specifics); Assert.True(entry.InstanceOfType <string>()); Assert.Equal(specifics, entry.Instance); }
public void CreateSuccessfullyTest() { var meta = new RxLogEntryMeta(this.GetType(), "member4", 1); var specifics = new object(); var entry = new RxLogEntry(meta, specifics); Assert.Same(meta, entry.Meta); Assert.Same(specifics, entry.Specifics); Assert.True(entry.InstanceOfType <object>()); }
public static ITimerContext LogOnDispose(this ITimerContext context, object host, [CallerMemberName] string callerMemberName = "", [CallerLineNumber] int lineNo = 0) { var meta = new RxLogEntryMeta(host.GetType(), callerMemberName, lineNo); return(new LoggingTimerContext(context, meta)); }
/// <summary> /// Provides a default formatted single line string for the meta data. /// </summary> /// <param name="meta"></param> /// <returns></returns> public virtual string FormatMeta(RxLogEntryMeta meta) { var formatter = new DefaultRxLogMetaFormatter(); return(formatter.Formatted(meta)); }
public abstract string Format(RxLoggerConfiguration configuration, RxLogEntryMeta meta, TLog instance, FormatFlags format);
public string Formatted(RxLogEntryMeta entryMeta) { Guard.NotNull(entryMeta); return(string.Format("{2:hh:mm:ss.fff} {0}.{1}:{3}", entryMeta.CallingClass != null ? entryMeta.CallingClass.Name : string.Empty, entryMeta.MemberName, entryMeta.TimeStampUtc, entryMeta.LineNo)); }