public void AddMessage(Message message) { lock (_messages) { _messages.Add(message); } }
public void DequeueMessages(Message[] messages) { lock (_messages) { foreach (var message in messages) { _messages.Remove(message); } } }
public void WriteMessage(Message message) { foreach (var outputPipe in _configurationContainer.Configuration.OutputPipes) { if (outputPipe.BufferMaximumKeepTime == TimeSpan.Zero) { outputPipe.OutputEngine.SaveMessages(message); } else { outputPipe.Queue.AddMessage(message); } } }
public Message CreateMessage( Exception exception, StackFrame stackFrame, Level level, string format, params object[] args) { var message = new Message { DateTimeOffset = DateTimeOffset.Now, Format = format, FormatArguments = args, Level = level }; if (stackFrame != null) { message.FileNumber = (uint)stackFrame.GetFileLineNumber(); message.FileName = stackFrame.GetFileName(); var method = stackFrame.GetMethod(); message.OriginMethod = method.Name; var declaringType = stackFrame.GetMethod().DeclaringType; if (declaringType != null) { message.OriginNamespace = declaringType.FullName; } } if (exception != null) { message.ExceptionMessage = exception.Message; message.ExceptionStackTrace = exception.StackTrace; } foreach (var messageModifier in _messageModifiers) { messageModifier.ModifyMessage(message); } return message; }