mirror of
https://github.com/cyanfish/naps2.git
synced 2024-09-21 04:37:47 +03:00
42 lines
1.1 KiB
C#
42 lines
1.1 KiB
C#
namespace NAPS2.Logging;
|
|
|
|
/// <summary>
|
|
/// Logging functionality.
|
|
/// </summary>
|
|
public static class Log
|
|
{
|
|
private static ILogger _logger = new DebugLogger();
|
|
private static IEventLogger _eventLogger = new NullEventLogger();
|
|
|
|
public static ILogger Logger
|
|
{
|
|
get => _logger;
|
|
set => _logger = value ?? throw new ArgumentNullException(nameof(value));
|
|
}
|
|
|
|
public static IEventLogger EventLogger
|
|
{
|
|
get => _eventLogger;
|
|
set => _eventLogger = value ?? throw new ArgumentNullException(nameof(value));
|
|
}
|
|
|
|
public static void Error(string message, params object[] args)
|
|
{
|
|
_logger.Error(string.Format(message, args));
|
|
}
|
|
|
|
public static void ErrorException(string message, Exception exception)
|
|
{
|
|
_logger.ErrorException(message, exception);
|
|
}
|
|
|
|
public static void FatalException(string message, Exception exception)
|
|
{
|
|
_logger.FatalException(message, exception);
|
|
}
|
|
|
|
public static void Event(EventType eventType, EventParams eventParams)
|
|
{
|
|
_eventLogger.LogEvent(eventType, eventParams);
|
|
}
|
|
} |