public void Log <TState>( LogLevel logLevel, EventId eventId, TState state, Exception exception, Func <TState, Exception, string> formatter) { var msg = LogDtoConverter.Convert(logLevel, eventId, state, exception, formatter); var msgToWrite = new LogMessageToWrite(msg, logLevel); _logMessageQueue.Push(msgToWrite); }
public void Log <TState>( LogLevel logLevel, EventId eventId, TState state, Exception exception, Func <TState, Exception, string> formatter) { var msg = LogDtoConverter.Convert(logLevel, eventId, state, exception, formatter); var msgToWrite = new LogMessageToWrite(msg, logLevel); var writeTask = _logMessageWriter.WriteMessageAsync(Enumerable.Repeat(msgToWrite, 1), CancellationToken.None); writeTask.Wait(CancellationToken.None); }
string GetFilenameTag(LogMessageToWrite messageToWrite) { switch (messageToWrite.Level) { case LogLevel.Trace: case LogLevel.Debug: return("dbg"); case LogLevel.Error: case LogLevel.Critical: return("err"); case LogLevel.Information: case LogLevel.None: case LogLevel.Warning: return(""); default: throw new ArgumentOutOfRangeException(nameof(messageToWrite.Level), messageToWrite.Level, null); } }
public void Push(LogMessageToWrite message) { _logQueue.TryAdd(message); }