Files

42 lines
1.3 KiB
C#
Raw Permalink Normal View History

2026-09-02 16:31:50 +08:00
using System;
// ReSharper disable once CheckNamespace
namespace Prism.Logging
{
public static class LoggerFacadeExtensions
{
public static void Error(this ILoggerFacade logger, string message, Exception e = null)
{
logger.Log(GetMessage(message, e), Category.Exception, Priority.High);
}
public static void Warning(this ILoggerFacade logger, string message, Exception e = null)
{
logger.Log(GetMessage(message, e), Category.Warn, Priority.Medium);
}
public static void Info(this ILoggerFacade logger, string message, Exception e = null)
{
logger.Log(GetMessage(message, e), Category.Info, Priority.Low);
}
public static void Debug(this ILoggerFacade logger, string message, Exception e = null)
{
logger.Log(GetMessage(message, e), Category.Debug, Priority.Low);
}
private static string GetMessage(string message, Exception e)
{
message = $"{message}{Environment.NewLine}";
if (e != null)
{
message = $"{message}{e.Message}{Environment.NewLine}" +
$"{e.StackTrace}{Environment.NewLine}";
}
return message;
}
}
}