The next generation of the Teknik Services. Written in ASP.NET.
https://www.teknik.io/
Du kan inte välja fler än 25 ämnen
Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.
31 rader
763 B
31 rader
763 B
4 år sedan
|
using Microsoft.Extensions.Logging;
|
||
|
using System;
|
||
|
using System.Collections.Concurrent;
|
||
|
using System.Collections.Generic;
|
||
|
using System.Text;
|
||
|
using Teknik.Configuration;
|
||
|
|
||
|
namespace Teknik.Logging
|
||
|
{
|
||
|
public class LoggerProvider : ILoggerProvider
|
||
|
{
|
||
|
private readonly Config _config;
|
||
|
private readonly ConcurrentDictionary<string, Logger> _loggers = new ConcurrentDictionary<string, Logger>();
|
||
|
|
||
|
public LoggerProvider(Config config)
|
||
|
{
|
||
|
_config = config;
|
||
|
}
|
||
|
|
||
|
public ILogger CreateLogger(string categoryName)
|
||
|
{
|
||
|
return _loggers.GetOrAdd(categoryName, name => new Logger(name, _config));
|
||
|
}
|
||
|
|
||
|
public void Dispose()
|
||
|
{
|
||
|
_loggers.Clear();
|
||
|
}
|
||
|
}
|
||
|
}
|