33 lines
913 B
C#

using Discord;
using Microsoft.Extensions.Logging;
namespace GodReplacementProduct;
public class GodReplacementLogger
{
private readonly ILogger<GodReplacementLogger> _logger;
public GodReplacementLogger(ILogger<GodReplacementLogger> logger)
{
_logger = logger;
}
public Task LogAsync(LogMessage message)
{
var severity = message.Severity switch
{
LogSeverity.Critical => LogLevel.Critical,
LogSeverity.Error => LogLevel.Error,
LogSeverity.Warning => LogLevel.Warning,
LogSeverity.Info => LogLevel.Information,
LogSeverity.Verbose => LogLevel.Debug,
LogSeverity.Debug => LogLevel.Trace,
_ => LogLevel.Information,
};
_logger.Log(severity, message.Exception, "[{Source}] {Message}", message.Source, message.Message);
return Task.CompletedTask;
}
}