Files
brick-framework/GameCore/Logging/CompositeLogger.cs

33 lines
740 B
C#

using GameCore.Logging.Interfaces;
namespace GameCore.Logging;
public class CompositeLogger : ILogger
{
private readonly List<ILogger> _loggers = [];
public CompositeLogger(params ILogger[] loggers)
{
_loggers.AddRange(loggers);
}
public void Debug(string message)
{
foreach (var logger in _loggers) logger.Debug(message);
}
public void Info(string message)
{
foreach (var logger in _loggers) logger.Info(message);
}
public void Warn(string message)
{
foreach (var logger in _loggers) logger.Warn(message);
}
public void Error(string message, Exception ex = null)
{
foreach (var logger in _loggers) logger.Error(message, ex);
}
}