2020-06-28 21:44:35 -05:00
|
|
|
using System;
|
2020-06-28 17:55:27 +09:00
|
|
|
using Microsoft.Extensions.Logging;
|
|
|
|
using Microsoft.Extensions.Logging.Abstractions;
|
2017-09-13 15:47:34 +09:00
|
|
|
|
|
|
|
namespace BTCPayServer.Logging
|
|
|
|
{
|
2017-10-27 17:53:04 +09:00
|
|
|
public class Logs
|
|
|
|
{
|
2021-11-22 17:16:08 +09:00
|
|
|
public Logs()
|
2017-10-27 17:53:04 +09:00
|
|
|
{
|
|
|
|
Configure(new FuncLoggerFactory(n => NullLogger.Instance));
|
|
|
|
}
|
2021-11-22 17:16:08 +09:00
|
|
|
public void Configure(ILoggerFactory factory)
|
2017-10-27 17:53:04 +09:00
|
|
|
{
|
2018-07-01 15:52:11 +09:00
|
|
|
if (factory == null)
|
|
|
|
Configure(new FuncLoggerFactory(n => NullLogger.Instance));
|
|
|
|
else
|
|
|
|
{
|
|
|
|
Configuration = factory.CreateLogger("Configuration");
|
|
|
|
PayServer = factory.CreateLogger("PayServer");
|
|
|
|
Events = factory.CreateLogger("Events");
|
|
|
|
}
|
2017-10-27 17:53:04 +09:00
|
|
|
}
|
2021-11-22 17:16:08 +09:00
|
|
|
public ILogger Configuration
|
2017-10-27 17:53:04 +09:00
|
|
|
{
|
|
|
|
get; set;
|
|
|
|
}
|
2021-11-22 17:16:08 +09:00
|
|
|
public ILogger PayServer
|
2017-10-27 17:53:04 +09:00
|
|
|
{
|
|
|
|
get; set;
|
|
|
|
}
|
2017-12-17 14:17:42 +09:00
|
|
|
|
2021-11-22 17:16:08 +09:00
|
|
|
public ILogger Events
|
2017-12-17 14:17:42 +09:00
|
|
|
{
|
|
|
|
get; set;
|
|
|
|
}
|
|
|
|
|
2017-10-27 17:53:04 +09:00
|
|
|
public const int ColumnLength = 16;
|
|
|
|
}
|
2017-09-13 15:47:34 +09:00
|
|
|
|
2017-10-27 17:53:04 +09:00
|
|
|
public class FuncLoggerFactory : ILoggerFactory
|
|
|
|
{
|
2020-06-28 22:07:48 -05:00
|
|
|
private readonly Func<string, ILogger> createLogger;
|
2017-10-27 17:53:04 +09:00
|
|
|
public FuncLoggerFactory(Func<string, ILogger> createLogger)
|
|
|
|
{
|
|
|
|
this.createLogger = createLogger;
|
|
|
|
}
|
|
|
|
public void AddProvider(ILoggerProvider provider)
|
|
|
|
{
|
2017-09-13 15:47:34 +09:00
|
|
|
|
2017-10-27 17:53:04 +09:00
|
|
|
}
|
2017-09-13 15:47:34 +09:00
|
|
|
|
2017-10-27 17:53:04 +09:00
|
|
|
public ILogger CreateLogger(string categoryName)
|
|
|
|
{
|
|
|
|
return createLogger(categoryName);
|
|
|
|
}
|
2017-09-13 15:47:34 +09:00
|
|
|
|
2017-10-27 17:53:04 +09:00
|
|
|
public void Dispose()
|
|
|
|
{
|
2017-09-13 15:47:34 +09:00
|
|
|
|
2017-10-27 17:53:04 +09:00
|
|
|
}
|
|
|
|
}
|
2017-09-13 15:47:34 +09:00
|
|
|
}
|