Files
LogViewerControl/CSharp/Core/LogViewer.Core/Extensions/LoggerExtensions.cs
T
Matthias Heil 511a5f9f51 Fixed Warnings
2026-04-05 08:00:09 +02:00

65 lines
2.5 KiB
C#

namespace Microsoft.Extensions.Logging;
public static class LoggerExtensions
{
public static void Emit(this ILogger logger, EventId eventId,
LogLevel logLevel, string message, Exception? exception = null, params object?[] args)
{
if (logger is null)
return;
//if (!logger.IsEnabled(logLevel))
// return;
switch (logLevel)
{
case LogLevel.Trace:
logger.LogTrace(eventId, message, args);
break;
case LogLevel.Debug:
logger.LogDebug(eventId, message, args);
break;
case LogLevel.Information:
logger.LogInformation(eventId, message, args);
break;
case LogLevel.Warning:
logger.LogWarning(eventId, exception, message, args);
break;
case LogLevel.Error:
logger.LogError(eventId, exception, message, args);
break;
case LogLevel.Critical:
logger.LogCritical(eventId, exception, message, args);
break;
}
}
public static void TestPattern(this ILogger logger, EventId eventId)
{
Exception exception = new InvalidDataException("Test Error Message");
#pragma warning disable CA1848 // Use the LoggerMessage delegates
logger.Emit(eventId, LogLevel.Trace, "Trace Test Pattern");
#pragma warning restore CA1848 // Use the LoggerMessage delegates
#pragma warning disable CA1848 // Use the LoggerMessage delegates
logger.Emit(eventId, LogLevel.Debug, "Debug Test Pattern");
#pragma warning restore CA1848 // Use the LoggerMessage delegates
#pragma warning disable CA1848 // Use the LoggerMessage delegates
logger.Emit(eventId, LogLevel.Information, "Information Test Pattern");
#pragma warning restore CA1848 // Use the LoggerMessage delegates
#pragma warning disable CA1848 // Use the LoggerMessage delegates
logger.Emit(eventId, LogLevel.Warning, "Warning Test Pattern");
#pragma warning restore CA1848 // Use the LoggerMessage delegates
#pragma warning disable CA1848 // Use the LoggerMessage delegates
logger.Emit(eventId, LogLevel.Error, "Error Test Pattern", exception);
#pragma warning restore CA1848 // Use the LoggerMessage delegates
#pragma warning disable CA1848 // Use the LoggerMessage delegates
logger.Emit(eventId, LogLevel.Critical, "Critical Test Pattern", exception);
#pragma warning restore CA1848 // Use the LoggerMessage delegates
}
}