Scoped logger (#14)

Logging extensions
This commit is contained in:
2022-01-16 15:14:23 +01:00
committed by GitHub
parent 1c7d3a2be2
commit 721b444dda
5 changed files with 385 additions and 1 deletions
@@ -0,0 +1,27 @@
using Microsoft.Extensions.Logging;
using System;
using System.Collections.Generic;
namespace SystemExtensions.NetStandard.Tests.Logging.Models
{
public sealed class CachingLogger<T> : ILogger<T>
{
public List<string> LogCache { get; } = new();
public IDisposable BeginScope<TState>(TState state)
{
throw new NotImplementedException();
}
public bool IsEnabled(LogLevel logLevel)
{
return true;
}
public void Log<TState>(LogLevel logLevel, EventId eventId, TState state, Exception exception, Func<TState, Exception, string> formatter)
{
var message = formatter(state, exception);
this.LogCache.Add(message);
}
}
}