LoggingEventModel.cs 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. using log4net.Core;
  2. using NLog;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.Linq;
  6. using System.Text;
  7. using System.Threading.Tasks;
  8. namespace SKMC.Api.Common
  9. {
  10. public class LoggingEventModel
  11. {
  12. public string Logger { get; set; }
  13. public string Timestamp { get; set; }
  14. public string Level { get; set; }
  15. public string Thread { get; set; }
  16. public string Message { get; set; }
  17. public string Exception { get; set; }
  18. public LoggingEventModel(LoggingEvent loggingEvent)
  19. {
  20. Logger = loggingEvent.LoggerName;
  21. Timestamp = loggingEvent.TimeStamp.ToString("yyyy-MM-dd HH:mm:ss,fff");
  22. Level = loggingEvent.Level.Name;
  23. Thread = loggingEvent.ThreadName;
  24. Message = loggingEvent.RenderedMessage;
  25. Exception = loggingEvent.GetExceptionString();
  26. }
  27. public LoggingEventModel(LogEventInfo loggingEvent)
  28. {
  29. Logger = loggingEvent.LoggerName;
  30. Timestamp = loggingEvent.TimeStamp.ToString("yyyy-MM-dd HH:mm:ss,fff");
  31. Level = loggingEvent.Level.Name;
  32. Thread = Convert.ToString(System.Threading.Thread.CurrentThread.ManagedThreadId);
  33. Message = loggingEvent.Message;
  34. Exception = loggingEvent.Exception.Message;
  35. }
  36. }
  37. }