private LogController() { _LogFormatProvider = new DefaultLogFormatProvider(); _FileLog = LogFactory.GetLogData(LogDataType.FILE); _InMemoryLog = LogFactory.GetLogData(LogDataType.IN_MEMORY); LoadLogData(); }
void AddLogLines(string filename, List <string> lines, List <LogListViewItem> destination) { m_LogFormatProvider = FormatProviderFactory.GetLineConverter(lines, m_LogFormatProvider); var logParser = new LogParser(FormatProviderFactory.GetLineConverter(lines, m_LogFormatProvider)); destination.AddRange(logParser.ParseLines(lines, filename, m_AllItems.Count)); }
/// <summary> /// Formats the <see cref="ILogEvent" /> with the specified provider. /// </summary> /// <param name="provider">The provider.</param> /// <param name="logEvent">The log event.</param> /// <returns></returns> public string Format(ILogFormatProvider provider, ILogEvent logEvent) { var format = provider.GetFormat(); var formattedDate = FormatDate(logEvent.Date, provider.GetDateFormat()); return(string.Format(format, formattedDate, logEvent.Topic, logEvent.Level, logEvent.Message, logEvent.ThreadId, logEvent.ProcessId, logEvent.Id, logEvent.PreciseTimestamp)); }
/// <summary> /// Initializes a new instance of the <see cref="ColoredConsoleAppender" /> class. /// </summary> /// <param name="provider">The provider.</param> /// <param name="console">The console.</param> public ColoredConsoleAppender(ILogFormatProvider provider = null, ISafeConsole console = null) { if (console == null) { console = SafeConsoleAdapter.Instance; } _console = console; if (provider == null) { provider = DefaultLogFormatProvider.Instance; } _provider = provider; }
/// <summary> /// Initializes a new instance of the <see cref="FileAppender" /> class. /// </summary> /// <param name="file">The file.</param> /// <param name="provider">The provider.</param> public FileAppender(string file, ILogFormatProvider provider = null) { if (!Path.IsPathRooted(file)) { // HACK: We do that to avoid streamwriterfactory to create file // where the System.IO nuget package cache location... // Depends on the test runner file = Path.Combine(Directory.GetCurrentDirectory(), file); } _file = file; if (provider == null) { provider = DefaultLogFormatProvider.Instance; } _provider = provider; }
/// <summary> /// Initializes a new instance of the <see cref="RollingFileAppender" /> class. /// </summary> /// <param name="file">The file.</param> /// <param name="provider">The provider.</param> /// <param name="fileFactory">The file factory.</param> /// <param name="fileSystem">The file system.</param> /// <param name="directoryFileSystem">The directory file system.</param> /// <param name="timeProvider">The time provider.</param> public RollingFileAppender( string file, ILogFormatProvider provider, IFileInfoFactory fileFactory, IFile fileSystem, IDirectory directoryFileSystem, ITimeProvider timeProvider) { if (!Path.IsPathRooted(file)) { // HACK: We do that to avoid streamwriterfactory to create file // where the System.IO nuget package cache location... // Depends on the test runner file = Path.Combine(directoryFileSystem.GetCurrentDirectory(), file); } var directory = Path.GetDirectoryName(file); if (!directoryFileSystem.Exists(directory)) { directoryFileSystem.CreateDirectory(directory); } if (provider == null) { provider = DefaultLogFormatProvider.Instance; } var taskScheduler = new LimitedConcurrencyLevelTaskScheduler(1); _taskFactory = new TaskFactory(taskScheduler); _provider = provider; _fileSystem = fileSystem; _timeProvider = timeProvider; _baseFile = file; _fileFactory = fileFactory; BuildFile(); if (_file.Exists) { // Always roll on start logging RollFiles(); } MaxLength = 1024 * 1024; }
public LogParser(ILogFormatProvider logFormatProvider) => m_LogFormatProvider = logFormatProvider;
protected LogBase(ILogFormatProvider formatProvider) { FormatProvider = formatProvider ?? new DefaultFormatProvider(); }
protected LogBase() { FormatProvider = new DefaultFormatProvider(); }
public NoLog(ILogFormatProvider formatProvider) : base(formatProvider) { }
public FileLogger(string filePath, ILogFormatProvider formatProvider) { this.filePath = filePath; this.logFormatProvider = formatProvider; }
/// <summary> /// Initializes a new instance of the <see cref="RollingFileAppender" /> class. /// </summary> /// <param name="file">The file.</param> /// <param name="provider">The provider.</param> public RollingFileAppender(string file, ILogFormatProvider provider = null) : this(file, provider, new FileInfoFactory(), new FileAdapter(), new DirectoryAdapter(), new TimeProvider()) { }
public ConsoleLogger(ILogFormatProvider formatProvider) : base(formatProvider) { }
public static ILogFormatProvider GetLineConverter(ICollection <string> logLines, ILogFormatProvider defaultProvider) { var result = defaultProvider ?? new JustMessageFormatProvider(); if ((logLines == null) || (logLines.Count == 0)) { return(result); } var firstNonEmptyLine = logLines.FirstOrDefault(l => !string.IsNullOrEmpty(l.Trim())); if (firstNonEmptyLine == null) { return(result); } foreach (FormatProviderType providerType in Enum.GetValues(typeof(FormatProviderType))) { var provider = GetLineConverter(providerType); if (provider.KnowsFormat(firstNonEmptyLine)) { return(provider); } } return(result); }