public override ILogger CreateLogger(string categoryName) { return(Loggers.GetOrAdd( categoryName, loggerName => new SplunkJsonLogger(categoryName, MessageQueue, payloadTransformer) { Options = CurrentOptions, ScopeProvider = ScopeProvider })); }
/// <summary> /// Creates a ILogger instance /// </summary> /// <param name="name">The category name for messages produced by the logger</param> /// <returns>The ILogger instance</returns> public ILogger CreateLogger(string name) { if (string.IsNullOrWhiteSpace(name)) { throw new ArgumentNullException(nameof(name)); } var logger = Loggers.GetOrAdd(name, loggerName => new Lazy <ILogger>(() => new Log4NetLogger(loggerName), LazyThreadSafetyMode.ExecutionAndPublication)); return(logger.Value); }
public ILogger CreateLogger(string categoryName) { var rollbar = ServiceProvider.GetRequiredService <Rollbar>(); return(Loggers.GetOrAdd(categoryName, name => new RollbarDotNetLogger(rollbar))); }
public virtual ILogger CreateLogger(string name) { return(Loggers.GetOrAdd(name, GetLogger)); }