From de64155ebd6fdc7072efce5610c0e6fddc117deb Mon Sep 17 00:00:00 2001 From: timerix Date: Tue, 6 Dec 2022 02:29:58 +0600 Subject: [PATCH] LoggerContext --- DTLib.Logging/Global.cs | 1 + DTLib.Logging/{Loggers => }/LoggerExtensions.cs | 10 ++++++++++ 2 files changed, 11 insertions(+) rename DTLib.Logging/{Loggers => }/LoggerExtensions.cs (74%) diff --git a/DTLib.Logging/Global.cs b/DTLib.Logging/Global.cs index 6f7c1f3..71451d6 100644 --- a/DTLib.Logging/Global.cs +++ b/DTLib.Logging/Global.cs @@ -1,6 +1,7 @@ global using System; global using System.Collections; global using System.Collections.Generic; +global using System.Runtime.CompilerServices; global using System.Linq; global using System.Text; global using System.Threading.Tasks; diff --git a/DTLib.Logging/Loggers/LoggerExtensions.cs b/DTLib.Logging/LoggerExtensions.cs similarity index 74% rename from DTLib.Logging/Loggers/LoggerExtensions.cs rename to DTLib.Logging/LoggerExtensions.cs index 1512581..cbfc4e3 100644 --- a/DTLib.Logging/Loggers/LoggerExtensions.cs +++ b/DTLib.Logging/LoggerExtensions.cs @@ -5,20 +5,30 @@ namespace DTLib.Logging.New; public static class LoggerExtensions { // replaces same overload in every ILogger instaance + [MethodImpl(MethodImplOptions.AggressiveInlining)] public static void Log(this ILogger logger, string context, LogSeverity severity, object message) => logger.Log(context, severity, message, logger.Format); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] public static void LogDebug(this ILogger logger, string context, object message) => logger.Log(context, LogSeverity.Debug, message); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] public static void LogInfo(this ILogger logger, string context, object message) => logger.Log(context, LogSeverity.Info, message); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] public static void LogWarn(this ILogger logger, string context, object message) => logger.Log(context, LogSeverity.Warn, message); + [MethodImpl(MethodImplOptions.AggressiveInlining)] public static void LogError(this ILogger logger, string context, object message) => logger.Log(context, LogSeverity.Error, message); + /// uses Ben.Demystifier to serialize exception + [MethodImpl(MethodImplOptions.AggressiveInlining)] public static void LogException(this ILogger logger, string context, Exception ex) => logger.Log(context, LogSeverity.Error, ex.Demystify()); } \ No newline at end of file