From dfd5f991a6274d37e876bb1af97e70e1ba08db9d Mon Sep 17 00:00:00 2001 From: Mole Date: Mon, 21 Sep 2020 11:30:16 +0200 Subject: [PATCH] Use Ms ILogger in LogProfiler allowing us to delete ConsoleLogger --- src/Umbraco.Core/Logging/ConsoleLogger.cs | 77 ------------------- src/Umbraco.Core/Logging/LogProfiler.cs | 5 +- src/Umbraco.Tests/Runtimes/StandaloneTests.cs | 4 +- src/Umbraco.Tests/Testing/UmbracoTestBase.cs | 30 +------- .../UmbracoExamine/ExamineBaseTest.cs | 5 +- 5 files changed, 8 insertions(+), 113 deletions(-) delete mode 100644 src/Umbraco.Core/Logging/ConsoleLogger.cs diff --git a/src/Umbraco.Core/Logging/ConsoleLogger.cs b/src/Umbraco.Core/Logging/ConsoleLogger.cs deleted file mode 100644 index 9f8757916c..0000000000 --- a/src/Umbraco.Core/Logging/ConsoleLogger.cs +++ /dev/null @@ -1,77 +0,0 @@ -using System; - -namespace Umbraco.Core.Logging -{ - public class ConsoleLogger : ILogger - { - private readonly IMessageTemplates _messageTemplates; - - public ConsoleLogger(IMessageTemplates messageTemplates) - { - _messageTemplates = messageTemplates; - } - - public bool IsEnabled(Type reporting, LogLevel level) - => true; - - public void Fatal(Type reporting, Exception exception) - { - Console.WriteLine("FATAL {0}", reporting.Name); - Console.WriteLine(exception); - } - - public void LogCritical(Exception exception, string messageTemplate, params object[] propertyValues) - { - Console.WriteLine("FATAL {0} - {1}", typeof(T).Name, _messageTemplates.Render(messageTemplate, propertyValues)); - Console.WriteLine(exception); - } - - public void LogCritical(string messageTemplate, params object[] propertyValues) - { - Console.WriteLine("FATAL {0} - {1}", typeof(T).Name, _messageTemplates.Render(messageTemplate, propertyValues)); - } - - public void LogError(Type reporting, Exception exception) - { - Console.WriteLine("ERROR {0}", reporting.Name); - Console.WriteLine(exception); - } - - public void LogError(Exception exception, string messageTemplate, params object[] propertyValues) - { - Console.WriteLine("ERROR {0} - {1}", typeof(T).Name, _messageTemplates.Render(messageTemplate, propertyValues)); - Console.WriteLine(exception); - } - - public void LogError(string messageTemplate, params object[] propertyValues) - { - Console.WriteLine("ERROR {0} - {1}", typeof(T).Name, _messageTemplates.Render(messageTemplate, propertyValues)); - } - - public void LogWarning(string message, params object[] propertyValues) - { - Console.WriteLine("WARN {0} - {1}", typeof(T).Name, _messageTemplates.Render(message, propertyValues)); - } - - public void LogWarning(Exception exception, string message, params object[] propertyValues) - { - Console.WriteLine("WARN {0} - {1}", typeof(T).Name, _messageTemplates.Render(message, propertyValues)); - Console.WriteLine(exception); - } - - public void LogInformation(string messageTemplate, params object[] propertyValues) - { - Console.WriteLine("INFO {0} - {1}", typeof(T).Name, _messageTemplates.Render(messageTemplate, propertyValues)); - } - - public void LogDebug(string messageTemplate, params object[] propertyValues) - { - Console.WriteLine("DEBUG {0} - {1}", typeof(T).Name, _messageTemplates.Render(messageTemplate, propertyValues)); - } - - public void LogTrace(string messageTemplate, params object[] propertyValues) - { - Console.WriteLine("VERBOSE {0} - {1}", typeof(T).Name, _messageTemplates.Render(messageTemplate, propertyValues)); - } - } -} diff --git a/src/Umbraco.Core/Logging/LogProfiler.cs b/src/Umbraco.Core/Logging/LogProfiler.cs index 23a9cd5d50..1c4b17ee8a 100644 --- a/src/Umbraco.Core/Logging/LogProfiler.cs +++ b/src/Umbraco.Core/Logging/LogProfiler.cs @@ -1,5 +1,6 @@ using System; using System.Diagnostics; +using Microsoft.Extensions.Logging; namespace Umbraco.Core.Logging { @@ -8,9 +9,9 @@ namespace Umbraco.Core.Logging /// public class LogProfiler : IProfiler { - private readonly ILogger _logger; + private readonly Microsoft.Extensions.Logging.ILogger _logger; - public LogProfiler(ILogger logger) + public LogProfiler(Microsoft.Extensions.Logging.ILogger logger) { _logger = logger; } diff --git a/src/Umbraco.Tests/Runtimes/StandaloneTests.cs b/src/Umbraco.Tests/Runtimes/StandaloneTests.cs index ec081926f4..8a00a291df 100644 --- a/src/Umbraco.Tests/Runtimes/StandaloneTests.cs +++ b/src/Umbraco.Tests/Runtimes/StandaloneTests.cs @@ -63,8 +63,7 @@ namespace Umbraco.Tests.Runtimes var loggerFactory = LoggerFactory.Create(builder => builder.AddConsole()); // create the very basic and essential things we need - var logger = new ConsoleLogger(new MessageTemplates()); - var profiler = new LogProfiler(logger); + var profiler = new LogProfiler(loggerFactory.CreateLogger()); var profilingLogger = new ProfilingLogger(loggerFactory.CreateLogger("ProfilingLogger"), profiler); var appCaches = AppCaches.Disabled; var globalSettings = new GlobalSettingsBuilder().Build(); @@ -273,7 +272,6 @@ namespace Umbraco.Tests.Runtimes // create the very basic and essential things we need var loggerFactory = LoggerFactory.Create(builder => builder.AddConsole()); - var logger = new ConsoleLogger(new MessageTemplates()); var profiler = Mock.Of(); var profilingLogger = new ProfilingLogger(loggerFactory.CreateLogger("ProfilingLogger"), profiler); var appCaches = AppCaches.Disabled; diff --git a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs index e92dc0fda0..af8d4c42a2 100644 --- a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs +++ b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs @@ -174,8 +174,8 @@ namespace Umbraco.Tests.Testing // FIXME: align to runtimes & components - don't redo everything here !!!! Yes this is getting painful - var (logger, profiler) = GetLoggers(Options.Logger); var loggerFactory = GetLoggerFactory(Options.Logger); + var profiler = new LogProfiler(loggerFactory.CreateLogger()); var msLogger = loggerFactory.CreateLogger("msLogger"); var proflogger = new ProfilingLogger(loggerFactory.CreateLogger("ProfilingLogger"), profiler); IOHelper = TestHelper.IOHelper; @@ -209,7 +209,6 @@ namespace Umbraco.Tests.Testing Composition.RegisterUnique(TypeFinder); Composition.RegisterUnique(LocalizedTextService); Composition.RegisterUnique(typeLoader); - Composition.RegisterUnique(logger); Composition.RegisterUnique(profiler); Composition.RegisterUnique(proflogger); Composition.RegisterUnique(appCaches); @@ -286,33 +285,6 @@ namespace Umbraco.Tests.Testing return factory; } - protected virtual (ILogger, IProfiler) GetLoggers(UmbracoTestOptions.Logger option) - { - // TODO: Fix this, give the microsoft loggers a name - ILogger logger; - IProfiler profiler; - - switch (option) - { - case UmbracoTestOptions.Logger.Mock: - logger = Mock.Of(); - profiler = Mock.Of(); - break; - case UmbracoTestOptions.Logger.Serilog: - logger = new SerilogLogger(new FileInfo(TestHelper.MapPathForTestFiles("~/unit-test.config"))); - profiler = new LogProfiler(logger); - break; - case UmbracoTestOptions.Logger.Console: - logger = new ConsoleLogger(new MessageTemplates()); - profiler = new LogProfiler(logger); - break; - default: - throw new NotSupportedException($"Logger option {option} is not supported."); - } - - return (logger, profiler); - } - protected virtual AppCaches GetAppCaches() { return AppCaches.Disabled; diff --git a/src/Umbraco.Tests/UmbracoExamine/ExamineBaseTest.cs b/src/Umbraco.Tests/UmbracoExamine/ExamineBaseTest.cs index 15a158196c..68497262ba 100644 --- a/src/Umbraco.Tests/UmbracoExamine/ExamineBaseTest.cs +++ b/src/Umbraco.Tests/UmbracoExamine/ExamineBaseTest.cs @@ -1,4 +1,5 @@ using System.IO; +using Microsoft.Extensions.Logging.Abstractions; using NUnit.Framework; using Umbraco.Core; using Umbraco.Core.Composing; @@ -20,8 +21,8 @@ namespace Umbraco.Tests.UmbracoExamine public void InitializeFixture() { - var logger = new SerilogLogger(new FileInfo(TestHelper.MapPathForTestFiles("~/unit-test.config"))); - _profilingLogger = new ProfilingLogger(NullLogger.Instance, new LogProfiler(logger)); + // var logger = new SerilogLogger(new FileInfo(TestHelper.MapPathForTestFiles("~/unit-test.config"))); + _profilingLogger = new ProfilingLogger(NullLogger.Instance, new LogProfiler(NullLogger.Instance)); } private IProfilingLogger _profilingLogger;