TraceModbusLogger.cs 726 B

12345678910111213141516171819202122232425262728
  1. #if NETSTANDARD1_3
  2. #else
  3. using System;
  4. using System.Diagnostics;
  5. namespace NModbus.Logging
  6. {
  7. public class TraceModbusLogger : ModbusLogger
  8. {
  9. private const int LevelColumnSize = 15;
  10. private static readonly string BlankHeader = Environment.NewLine + new string(' ', LevelColumnSize);
  11. public TraceModbusLogger(LoggingLevel minimumLoggingLevel = LoggingLevel.Debug)
  12. : base(minimumLoggingLevel)
  13. {
  14. }
  15. protected override void LogCore(LoggingLevel level, string message)
  16. {
  17. message = message?.Replace(Environment.NewLine, BlankHeader);
  18. Trace.WriteLine($"[{level}]".PadRight(LevelColumnSize) + message);
  19. }
  20. }
  21. }
  22. #endif