diff --git a/RedLockNet.SERedis/RedLockFactory.cs b/RedLockNet.SERedis/RedLockFactory.cs index 6d82ba2..f0e1d9f 100644 --- a/RedLockNet.SERedis/RedLockFactory.cs +++ b/RedLockNet.SERedis/RedLockFactory.cs @@ -15,6 +15,7 @@ public class RedLockFactory : IDistributedLockFactory, IDisposable private readonly RedLockConfiguration configuration; private readonly ILoggerFactory loggerFactory; private readonly ICollection redisCaches; + private readonly ILogger redlockLogger; public event EventHandler ConfigurationChanged; @@ -72,8 +73,9 @@ public RedLockFactory(RedLockConfiguration configuration) this.configuration = configuration ?? throw new ArgumentNullException(nameof(configuration), "Configuration must not be null"); this.loggerFactory = configuration.LoggerFactory ?? new LoggerFactory(); this.redisCaches = configuration.ConnectionProvider.CreateRedisConnections(); + this.redlockLogger = loggerFactory.CreateLogger(); - SubscribeToConnectionEvents(); + SubscribeToConnectionEvents(); } private void SubscribeToConnectionEvents() @@ -100,7 +102,7 @@ private void MultiplexerConfigurationChanged(object sender, StackExchange.Redis. public IRedLock CreateLock(string resource, TimeSpan expiryTime) { return RedLock.Create( - this.loggerFactory.CreateLogger(), + redlockLogger, redisCaches, resource, expiryTime, @@ -110,7 +112,7 @@ public IRedLock CreateLock(string resource, TimeSpan expiryTime) public async Task CreateLockAsync(string resource, TimeSpan expiryTime) { return await RedLock.CreateAsync( - this.loggerFactory.CreateLogger(), + redlockLogger, redisCaches, resource, expiryTime, @@ -120,7 +122,7 @@ public async Task CreateLockAsync(string resource, TimeSpan expiryTime public IRedLock CreateLock(string resource, TimeSpan expiryTime, TimeSpan waitTime, TimeSpan retryTime, CancellationToken? cancellationToken = null) { return RedLock.Create( - this.loggerFactory.CreateLogger(), + redlockLogger, redisCaches, resource, expiryTime, @@ -133,7 +135,7 @@ public IRedLock CreateLock(string resource, TimeSpan expiryTime, TimeSpan waitTi public async Task CreateLockAsync(string resource, TimeSpan expiryTime, TimeSpan waitTime, TimeSpan retryTime, CancellationToken? cancellationToken = null) { return await RedLock.CreateAsync( - this.loggerFactory.CreateLogger(), + redlockLogger, redisCaches, resource, expiryTime,